Fast scheduling and optmization of multi-stage hierarchical networks

ABSTRACT

Significantly optimized multi-stage networks with scheduling methods for faster scheduling of connections, useful in wide target applications, with VLSI layouts using only horizontal and vertical links to route large scale sub-integrated circuit blocks having inlet and outlet links, and laid out in an integrated circuit device in a two-dimensional grid arrangement of blocks are presented. The optimized multi-stage networks in each block employ several slices of rings of stages of switches with inlet and outlet links of sub-integrated circuit blocks connecting to rings from either left-hand side only, or from right-hand side only, or from both left-hand side and right-hand side; and employ multi-drop links where outlet links of cross links from switches in a stage of a ring in one sub-integrated circuit block are connected to either inlet links of switches in the another stage of a ring in the same or another sub-integrated circuit block.

CROSS REFERENCE TO RELATED APPLICATIONS

This is a Continuation Application and claims priority of U.S. patentapplication Ser. No. 14/329,876 entitled “FAST SCHEDULING ANDOPTIMIZATION OF MULTI-STAGE HIERARCHICAL NETWORKS” by Venkat Kondaassigned to the same assignee as the current application and filed Jul.11, 2014, which is incorporated by reference in its entirety. Thisapplication is related to and incorporates by reference in its entiretyand claims priority to the U.S. Provisional Patent Application Ser. No.61/846,083 entitled “FAST SCHEDULING AND OPTIMIZATION OF MULTI-STAGEHIERARCHICAL NETWORKS” by Venkat Konda assigned to the same assignee asthe current application, filed Jul. 15, 2013.

This application is Continuation In Part Application to and claimspriority of the U.S. Pat. No. 9,374,322 entitled “OPTIMIZATION OFMULTI-STAGE HIERARCHICAL NETWORKS FOR PRACTICAL ROUTING APPLICATIONS” byVenkat Konda assigned to the same assignee as the current application,issued Jun. 21, 2016 and the PCT Application Serial No. PCT/US12/53814entitled “OPTIMIZATION OF MULTI-STAGE HIERARCHICAL NETWORKS FORPRACTICAL ROUTING APPLICATIONS” by Venkat Konda assigned to the sameassignee as the current application, filed Sep. 6, 2012, and both ofthem in turn are Continuation in Part applications to the U.S.Provisional Patent Application Ser. No. 61/531,615 entitled“OPTIMIZATION OF MULTI-STAGE HIERARCHICAL NETWORKS FOR PRACTICAL ROUTINGAPPLICATIONS” by Venkat Konda assigned to the same assignee as thecurrent application, filed Sep. 7, 2011.

This application is related to and incorporates by reference in itsentirety the U.S. Pat. No. 8,270,400 entitled “FULLY CONNECTEDGENERALIZED MULTI-STAGE NETWORKS” by Venkat Konda assigned to the sameassignee as the current application, issued Sep. 18, 2012, the U.S.Provisional Patent Application Ser. No. 60/905,526 entitled “LARGE SCALECROSSPOINT REDUCTION WITH NONBLOCKING UNICAST & MULTICAST IN ARBITRARILYLARGE MULTI-STAGE NETWORKS” by Venkat Konda assigned to the sameassignee as the current application, filed Mar. 6, 2007, and the U.S.Provisional Patent Application Ser. No. 60/940,383 entitled “FULLYCONNECTED GENERALIZED MULTI-STAGE NETWORKS” by Venkat Konda assigned tothe same assignee as the current application, filed May 25, 2007.

This application is related to and incorporates by reference in itsentirety the U.S. Pat. No. 8,170,040 entitled “FULLY CONNECTEDGENERALIZED BUTTERFLY FAT TREE NETWORKS” by Venkat Konda assigned to thesame assignee as the current application, issued May 1, 2012, the U.S.Provisional Patent Application Ser. No. 60/940,387 entitled “FULLYCONNECTED GENERALIZED BUTTERFLY FAT TREE NETWORKS” by Venkat Kondaassigned to the same assignee as the current application, filed May 25,2007, and the U.S. Provisional Patent Application Ser. No. 60/940,390entitled “FULLY CONNECTED GENERALIZED MULTI-LINK BUTTERFLY FAT TREENETWORKS” by Venkat Konda assigned to the same assignee as the currentapplication, filed May 25, 2007

This application is related to and incorporates by reference in itsentirety the U.S. Pat. No. 8,363,649 entitled “FULLY CONNECTEDGENERALIZED MULTI-LINK MULTI-STAGE NETWORKS” by Venkat Konda assigned tothe same assignee as the current application, issued Jan. 29, 2013, theU.S. Provisional Patent Application Ser. No. 60/940,389 entitled “FULLYCONNECTED GENERALIZED REARRANGEABLY NONBLOCKING MULTI-LINK MULTI-STAGENETWORKS” by Venkat Konda assigned to the same assignee as the currentapplication, filed May 25, 2007, the U.S. Provisional Patent ApplicationSer. No. 60/940,391 entitled “FULLY CONNECTED GENERALIZED FOLDEDMULTI-STAGE NETWORKS” by Venkat Konda assigned to the same assignee asthe current application, filed May 25, 2007 and the U.S. ProvisionalPatent Application Ser. No. 60/940,392 entitled “FULLY CONNECTEDGENERALIZED STRICTLY NONBLOCKING MULTI-LINK MULTI-STAGE NETWORKS” byVenkat Konda assigned to the same assignee as the current application,filed May 25, 2007.

This application is related to and incorporates by reference in itsentirety the U.S. Pat. No. 8,269,523 entitled “VLSI LAYOUTS OF FULLYCONNECTED GENERALIZED NETWORKS” by Venkat Konda assigned to the sameassignee as the current application, issued Sep. 18, 2012, the PCTApplication Serial No. PCT/U08/64605 entitled “VLSI LAYOUTS OF FULLYCONNECTED GENERALIZED NETWORKS” by Venkat Konda assigned to the sameassignee as the current application, filed May 22, 2008, and the U.S.Provisional Patent Application Ser. No. 60/940,394 entitled “VLSILAYOUTS OF FULLY CONNECTED GENERALIZED NETWORKS” by Venkat Kondaassigned to the same assignee as the current application, filed May 25,2007.

This application is related to and incorporates by reference in itsentirety the U.S. Pat. No. 8,898,611 entitled “VLSI LAYOUTS OF FULLYCONNECTED GENERALIZED AND PYRAMID NETWORKS WITH LOCALITY EXPLOITATION”by Venkat Konda assigned to the same assignee as the currentapplication, issued Nov. 25, 2014, the PCT Application Serial No.PCT/US10/52984 entitled “VLSI LAYOUTS OF FULLY CONNECTED GENERALIZED ANDPYRAMID NETWORKS WITH LOCALITY EXPLOITATION” by Venkat Konda assigned tothe same assignee as the current application, filed Oct. 16, 2010, theU.S. Provisional Patent Application Ser. No. 61/252,603 entitled “VLSILAYOUTS OF FULLY CONNECTED NETWORKS WITH LOCALITY EXPLOITATION” byVenkat Konda assigned to the same assignee as the current application,filed Oct. 16, 2009, and the U.S. Provisional Patent Application Ser.No. 61/252,609 entitled “VLSI LAYOUTS OF FULLY CONNECTED GENERALIZED ANDPYRAMID NETWORKS” by Venkat Konda assigned to the same assignee as thecurrent application, filed Oct. 16, 2009.

BACKGROUND OF INVENTION

Multi-stage interconnection networks such as Benes networks andbutterfly fat tree networks are widely useful in telecommunications,parallel and distributed computing. However VLSI layouts, known in theprior art, of these interconnection networks in an integrated circuitare inefficient and complicated.

Other multi-stage interconnection networks including butterfly fat treenetworks, Banyan networks, Batcher-Banyan networks, Baseline networks,Delta networks, Omega networks and Flip networks have been widelystudied particularly for self-routing packet switching applications.Also Benes Networks with radix of two have been widely studied and it isknown that Benes Networks of radix two are shown to be built with backto back baseline networks which are rearrangeably nonblocking forunicast connections.

The most commonly used VLSI layout in an integrated circuit is based ona two-dimensional grid model comprising only horizontal and verticaltracks. An intuitive interconnection network that utilizestwo-dimensional grid model is 2D Mesh Network and its variations such assegmented mesh networks. Hence routing networks used in VLSI layouts aretypically 2D mesh networks and its variations. However Mesh Networksrequire large scale cross points typically with a growth rate of O(N²)where N is the number of computing elements, ports, or logic elementsdepending on the application.

Multi-stage interconnection network with a growth rate of O(N×log N)requires significantly small number of cross points. U.S. Pat. No.6,185,220 entitled “Grid Layouts of Switching and Sorting Networks”granted to Muthukrishnan et al. describes a VLSI layout using existingVLSI grid model for Benes and Butterfly networks. U.S. Pat. No.6,940,308 entitled “Interconnection Network for a Field ProgrammableGate Array” granted to Wong describes a VLSI layout where switchesbelonging to lower stage of Benes Network are laid out close to thelogic cells and switches belonging to higher stages are laid out towardsthe center of the layout.

Due to the inefficient and in some cases impractical VLSI layout ofBenes and butterfly fat tree networks on a semiconductor chip, todaymesh networks and segmented mesh networks are widely used in thepractical applications such as field programmable gate arrays (FPGAs),programmable logic devices (PLDs), and parallel computing interconnects.The prior art VLSI layouts of Benes and butterfly fat tree networks andVLSI layouts of mesh networks and segmented mesh networks require largearea to implement the switches on the chip, large number of wires,longer wires, with increased power consumption, increased latency of thesignals which effect the maximum clock speed of operation. Some networksmay not even be implemented practically on a chip due to the lack ofefficient layouts.

Fully connected Benes and butterfly fat tree networks are an over killfor certain practical routing applications and need to be optimized tosignificantly improve area, power and performance of the routingnetwork.

SUMMARY OF INVENTION

Significantly optimized multi-stage networks for faster scheduling ofconnections, useful in wide target applications, with VLSI layouts (orfloor plans) using only horizontal and vertical links to route largescale sub-integrated circuit blocks having inlet and outlet links, andlaid out in an integrated circuit device in a two-dimensional gridarrangement of blocks, (for example in an FPGA where the sub-integratedcircuit blocks are Lookup Tables, or memory blocks, or DSP blocks) arepresented. The optimized multi-stage networks in each block employseveral slices of rings of stages of switches with inlet and outletlinks of sub-integrated circuit blocks connecting to rings from eitherleft-hand side only, or from right-hand side only, or from bothleft-hand side and right-hand side.

The optimized multi-stage networks with their VLSI layouts employshuffle exchange multi-drop links where outlet links of cross links fromswitches in a stage of a ring in one sub-integrated circuit block areconnected to either inlet links of switches in the another stage of aring in another sub-integrated circuit block or inlet links of switchesin the another stage of a ring in the same sub-integrated circuit blockso that said cross links are either vertical links or horizontal andvice versa.

The VLSI layouts exploit spatial locality so that differentsub-integrated circuit blocks that are spatially nearer are connectedwith shorter shuffle exchange links compared to the shuffle exchangelinks between spatially farther sub-integrated circuit blocks. Theoptimized multi-stage networks provide high routability for broadcast,unicast and multicast connections, yet with the benefits ofsignificantly lower cross points hence smaller area, lower signallatency, lower power and with significant fast compilation or routingtime. Various scheduling methods are also disclosed to schedule a set ofmulticast connections in the multi-stage hierarchical network.

The optimized multi-stage networks V_(Comb)(N₁,N₂,d,s) &V_(D-Comb)(N₁,N₂,d,s) according to the current invention inherit theproperties of one or more, in addition to additional properties,generalized multi-stage and pyramid networks V(N₁,N₂,d,s) &V_(P)(N₁,N₂,d,s), generalized folded multi-stage and pyramid networksV_(fold)(N₁,N₂,d,s) & V_(fold-p)(N₁,N₂,d,s), generalized butterfly fattree and butterfly fat pyramid networks V_(bft)(N₁,N₂,d,s) &V_(bfp)(N₁,N₂,d,s), generalized multi-link multi-stage and pyramidnetworks V_(mlink)(N₁,N₂,d,s) & V_(mlink-p)(N₁,N₂,d,s), generalizedfolded multi-link multi-stage and pyramid networksV_(fold-mlink)(N₁,N₂,d,s) & V_(fold-mlink-p)(N₁,N₂,d,s), generalizedmulti-link butterfly fat tree and butterfly fat pyramid networksV_(mlink-bft)(N₁,N₂,d,s) & V_(mlink-bfp)(N₁,N₂,d,s), generalizedhypercube networks V_(hcube)(N₁,N₂,d,s), and generalized cube connectedcycles networks V_(CCC)(N₁,N₂,d,s) for s=1, 2, 3 or any number ingeneral.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1A is a diagram 100A of an exemplary partial multi-stagehierarchical network corresponding to one block with 4 inputs and 2outputs of a computational block connecting only from left-hand side, toroute practical applications such as FPGA routing of hardware designs inaccordance with the invention.

FIG. 1B is a diagram 100B of an exemplary partial multi-stagehierarchical network corresponding to one block with 8 inputs and 4outputs of a computational block connecting from both left-hand side andright-hand side, to route practical applications such as FPGA routing ofhardware designs in accordance with the invention.

FIG. 1C is a diagram 100C of an exemplary partial multi-stagehierarchical network corresponding to one block, by dividing the networkinto two parallel and independent slices, with 16 inputs and 4 outputsof a computational block connecting from both left-hand side andright-hand side, to route practical applications such as FPGA routing ofhardware designs in accordance with the invention.

FIG. 1C1 is a diagram 100C1, FIG. 1C2 is a diagram 100C2, FIG. 1C3 is adiagram 100C3, and FIG. 1C4 is a diagram 100C4 illustrate the specificdetails of the diagram 100C of FIG. 1C, particularly the connectionsbetween different slices.

FIG. 1C5 is a diagram 100C5 illustrate the specific details of thediagram 100C of FIG. 1C, particularly the internal connections betweentwo successive stages of any ring of any slice, in one embodiment.

FIG. 2A is a diagram 200A, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block.

FIG. 2B is a diagram 200B, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block.

FIG. 2C is a diagram 200C, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block.

FIG. 2D is a diagram 200D, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block.

FIG. 2E is a diagram 200E, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block.

FIG. 2F is a diagram 200F, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block.

FIG. 3A is a diagram 300A, in an embodiment of, all the connectionsbetween two successive stages of two different rings in the same blockor in two different blocks of a multi-stage hierarchical network.

FIG. 3B is a diagram 300B, in an embodiment of, all the connectionsbetween two successive stages of two different rings in the same blockor in two different blocks of a multi-stage hierarchical network.

FIG. 3C is a diagram 300C, in an embodiment of, all the connectionsbetween two successive stages of two different rings in the same blockor in two different blocks of a multi-stage hierarchical network.

FIG. 3D is a diagram 300D, in an embodiment of, all the connectionsbetween two successive stages of two different rings in the same blockor in two different blocks of a multi-stage hierarchical network.

FIG. 3E is a diagram 300E, in an embodiment of, all the connectionsbetween two successive stages of two different rings in the same blockor in two different blocks of a multi-stage hierarchical network.

FIG. 4A is a diagram 400A, in an embodiment of, all the connectionsbetween different stages of two different rings in the same block or intwo different blocks of a multi-stage hierarchical network.

FIG. 4B is a diagram 400B, in an embodiment of, all the connectionsbetween different stages of two different rings in the same block or intwo different blocks of a multi-stage hierarchical network.

FIG. 5A is a diagram 500A, in an embodiment of, all the connections withmulti-drop hop wires, between two successive stages of two differentrings in the same block or in two different blocks of a multi-stagehierarchical network.

FIG. 6A is a diagram 600A, in an embodiment of, all the connections withmulti-drop hop wires, between different stages of two different rings inthe same block or in two different blocks of a multi-stage hierarchicalnetwork.

FIG. 6B is a diagram 600B, in an embodiment of, all the connections withmulti-drop hop wires, between different stages of two different rings inthe same block or in two different blocks of a multi-stage hierarchicalnetwork.

FIG. 7A is a diagram 700A, is an embodiment of hop wire connection chartcorresponding to a block of multi-stage hierarchical network, where theinter-ring connections are given between two successive stages of twodifferent rings as described in diagrams 300A of FIG. 3A to 300E of FIG.3E.

FIG. 8 is a diagram 800, is an embodiment of 2D-grid of blocks with eachblock corresponding to a partial multi-stage network to implement anexemplary multi-stage hierarchical network, in accordance with theinvention.

FIG. 9A is a diagram 900A, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 9B is a diagram 900B, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 9C is a diagram 900C, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 9D is a diagram 900D, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 9E is a diagram 900E, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 10A is a diagram 1000A, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 10B is a diagram 1000B, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 10C is a diagram 1000C, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 10D is a diagram 1000D, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 10E is a diagram 1000E, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 10F is a diagram 1000F, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 11A is a diagram 1100A, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 11B is a diagram 1100B, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 11C is a diagram 1100C, in an embodiment of, a stage in a ring ofmulti-stage hierarchical network corresponding to one block, with delayoptimizations.

FIG. 12 is a diagram 1200, in an embodiment, all the connections betweentwo successive stages of two different rings in the same block or in twodifferent blocks of a multi-stage hierarchical network with delayoptimizations.

FIG. 13 is a diagram 1300, in one embodiment, all the connectionsbetween two successive stages of two different rings in the same blockor in two different blocks of a multi-stage hierarchical network withdelay optimizations.

FIG. 14 is a diagram 1400, in an embodiment of, all the connectionsbetween two successive stages of two different rings in the same blockor in two different blocks of a multi-stage hierarchical network withdelay optimizations.

FIG. 15 is a diagram 1500, in an embodiment of, all the connectionsbetween two successive stages of two different rings in the same blockor in two different blocks of a multi-stage hierarchical network withdelay optimizations.

FIG. 16A1 is a diagram 1600A1 of an exemplary prior art implementationof a two by two switch; FIG. 16A2 is a diagram 1600A2 for programmableintegrated circuit prior art implementation of the diagram 1600A1 ofFIG. 16A1; FIG. 16A3 is a diagram 1600A3 for one-time programmableintegrated circuit prior art implementation of the diagram 1600A1 ofFIG. 16A1; FIG. 16A4 is a diagram 1600A4 for integrated circuitplacement and route implementation of the diagram 1600A1 of FIG. 16A1.

FIG. 17 is high-level flowchart of a scheduling method 1700 according tothe invention, used to set up a set of multicast connections in thecomplete multi-stage hierarchical network as disclosed in the currentinvention.

FIG. 18 is high-level flowchart of a scheduling method 1800 according tothe invention, used to set up a set of multicast connections first onthe external wires and then on internal wires in the completemulti-stage hierarchical network as disclosed in the current invention.

DETAILED DESCRIPTION OF THE INVENTION

Fully connected multi-stage hierarchical networks are an over kill inevery dimension such as area, power, and performance for certainpractical routing applications and need to be optimized to significantlyimprove savings in area, power and performance of the routing network.The present invention discloses several embodiments of the optimizedmulti-stage hierarchical networks for practical routing applicationsalong with their VLSI layout (floor plan) feasibility and simplicity.

The multi-stage hierarchical networks considered for optimization in thecurrent invention include: generalized multi-stage networksV(N₁,N₂,d,s), generalized folded multi-stage networksV_(fold)(N₁,N₂,d,s), generalized butterfly fat tree networksV_(bft)(N₁,N₂,d,s), generalized multi-link multi-stage networksV_(mlink)(N₁,N₂,d,s), generalized folded multi-link multi-stage networksV_(fold-mlink)(N₁,N₂,d,s), generalized multi-link butterfly fat treenetworks V_(mlink-bft)(N₁,N₂,d,s), generalized hypercube networksV_(hcube)(N₁,N₂,d,s), and generalized cube connected cycles networksV_(ccc)(N₁,N₂,d,s) for s=1, 2, 3 or any number in general. Alternativelythe optimized multi-stage hierarchical networks disclosed in thisinvention inherit the properties of one or more of these networks, inaddition to additional properties that may not be exhibited thesenetworks.

The optimized multi-stage hierarchical networks disclosed are applicablefor practical routing applications, with several goals such as: 1) allthe signals in the design starting from an inlet link of the network toan outlet link of the network need to be setup without blocking. Thesesignals may consist of broadcast, unicast and multicast connections;Each routing resource may need to be used by only one signal orconnection; 2) physical area consumed by the routing network to setupall the signals needs to be small; 3) power consumption of the networkneeds to be small, after the signals are setup. Power may be both staticpower and dynamic power; 4) Delay of the signal or a connection needs tobe small after it is setup through a path using several routingresources in the path. The smaller the delay of the connections willlead to faster performance of the design. Typically delay of thecritical connections determines the performance of the design on a givennetwork; 5) Designs need to be not only routed through the network(i.e., all the signals need to be setup from inlet links of the networkto the outlet links of the network.), but also the routing needs to bein faster time using efficient routing algorithms; 6) Efficient VLSIlayout of the network is also critical and can greatly influence all theother parameters including the area taken up by the network on the chip,total number of wires, length of the wires, delay through the signalpaths and hence the maximum clock speed of operation.

The different varieties of multi-stage networks described in variousembodiments in the current invention have not been implementedpreviously on the semiconductor chips. The practical application ofthese networks includes Field Programmable Gate Array (FPGA) chips.Current commercial FPGA products such as Xilinx's Vertex, Altera'sStratix, Lattice's ECPx implement island-style architecture using meshand segmented mesh routing interconnects using either full crossbars orsparse crossbars. These routing interconnects consume large silicon areafor crosspoints, long wires, large signal propagation delay and henceconsume lot of power.

The current invention discloses the optimization and scheduling methodsof multi-stage hierarchical networks with fast scheduling ofconnections, for practical routing applications of numerous types ofmulti-stage networks also using multi-drop links. The optimizationsdisclosed in the current invention are applicable to including thenumerous generalized multi-stage networks disclosed in the followingpatent applications:

1) Strictly and rearrangeably nonblocking for arbitrary fan-outmulticast and unicast for generalized multi-stage networks V(N₁,N₂,d,s)with numerous connection topologies and the scheduling methods aredescribed in detail in the U.S. Pat. No. 8,270,400 that is incorporatedby reference above.

2) Strictly and rearrangeably nonblocking for arbitrary fan-outmulticast and unicast for generalized butterfly fat tree networksV_(bft)(N₁,N₂,d,s) with numerous connection topologies and thescheduling methods are described in detail in the U.S. Pat. No.8,170,040 that is incorporated by reference above.

3) Rearrangeably nonblocking for arbitrary fan-out multicast andunicast, and strictly nonblocking for unicast for generalized multi-linkmulti-stage networks V_(mlink)(N₁,N₂,d,s) and generalized foldedmulti-link multi-stage networks V_(fold-mlink)(N₁,N₂,d,s) with numerousconnection topologies and the scheduling methods are described in detailin the U.S. Pat. No. 8,363,649 that is incorporated by reference above.

4) Strictly and rearrangeably nonblocking for arbitrary fan-outmulticast and unicast for generalized multi-link butterfly fat treenetworks V_(mlink-bft)(N₁,N₂,d,s) with numerous connection topologiesand the scheduling methods are described in detail in the U.S. Pat. No.8,170,040 that is incorporated by reference above.

5) Strictly and rearrangeably nonblocking for arbitrary fan-outmulticast and unicast for generalized folded multi-stage networksV_(fold)(N₁,N₂,d,s) with numerous connection topologies and thescheduling methods are described in detail in the U.S. Pat. No.8,363,649 that is incorporated by reference above.

6) Strictly nonblocking for arbitrary fan-out multicast and unicast forgeneralized multi-link multi-stage networks V_(mlink)(N₁,N₂,d,s) andgeneralized folded multi-link multi-stage networksV_(fold-mlink)(N₁,N₂,d,s) with numerous connection topologies and thescheduling methods are described in detail in the U.S. Pat. No.8,363,649 that is incorporated by reference above.

7) VLSI layouts of numerous types of multi-stage networks are describedin the U.S. Pat. No. 8,269,523 entitled “VLSI LAYOUTS OF FULLY CONNECTEDNETWORKS” that is incorporated by reference above.

8) VLSI layouts of numerous types of multi-stage networks are describedin the U.S. Pat. No. 8,898,611 entitled “VLSI LAYOUTS OF FULLY CONNECTEDGENERALIZED AND PYRAMID NETWORKS WITH LOCALITY EXPLOITATION” that isincorporated by reference above.

In addition the optimization with the VLSI layouts disclosed in thecurrent invention are also applicable to generalized multi-stage pyramidnetworks V_(p)(N₁,N₂,d,s), generalized folded multi-stage pyramidnetworks V_(fold-p)(N₁,N₂,d,s), generalized butterfly fat pyramidnetworks V_(bfp)(N₁,N₂,d,s), generalized multi-link multi-stage pyramidnetworks V_(mlink-p), (N₁,N₂,d,s), generalized folded multi-linkmulti-stage pyramid networks V_(fold-mlink-p)(N₁,N₂,d,s), generalizedmulti-link butterfly fat pyramid networks V_(mlink-bfp)(N₁,N₂,d,s),generalized hypercube networks V_(hcube)(N₁,N₂,d,s) and generalized cubeconnected cycles networks V_(CCC)(N₁,N₂,d,s) for s=1, 2, 3 or any numberin general.

Finally the current invention discloses the optimizations and VLSIlayouts of multi-stage hierarchical networks V_(Comb)(N₁,N₂,d,s) and theoptimizations and VLSI layouts of multi-stage hierarchical networksV_(D-Comb)(N₁,N₂,d,s) for practical routing applications (particularlyto set up broadcast, unicast and multicast connections), where “Comb”denotes the combination of and “D-Comb” denotes the delay optimizedcombination of any of the generalized multi-stage networks V(N₁,N₂,d,s),generalized folded multi-stage networks V_(fold)(N₁,N₂,d,s), generalizedbutterfly fat tree networks V_(bft)(N₁,N₂,d,s), generalized multi-linkmulti-stage networks V_(mlink)(N₁,N₂,d,s), generalized folded multi-linkmulti-stage networks V_(fold-mlink)(N₁,N₂,d,s), generalized multi-linkbutterfly fat tree networks V_(mlink-bft)(N₁,N₂,d,s), generalizedmulti-stage pyramid networks V_(p)(N₁,N₂,d,s), generalized foldedmulti-stage pyramid networks V_(fold-p)(N₁,N₂,d,s), generalizedbutterfly fat pyramid networks V_(bfp)(N₁,N₂,d,s), generalizedmulti-link multi-stage pyramid networks V_(mlink-p)(N₁,N₂,d,s),generalized folded multi-link multi-stage pyramid networksV_(fold-mlink-p)(N₁,N₂,d,s), generalized multi-link butterfly fatpyramid networks V_(mlink-bfp)(N₁,N₂,d,s), generalized hypercubenetworks V_(hcube)(N₁,N₂,d,s), and generalized cube connected cyclesnetworks V_(ccc)(N₁,N₂,d,s) for s=1, 2, 3 or any number in general.

Multi-Stage Hierarchical Network V_(Comb)(N₁,N₂,d,s):

Referring to diagram 100A in FIG. 1A, in one embodiment, an exemplarypartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) whereN₁=200; N₂=400; d=2; and s=1 corresponding to one computational block,with each computational block having 4 inlet links namely I1, I2, I3,and I4; and 2 outlet links namely O1 and O2. And for each computationalblock the corresponding partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100A consists of two rings 110 and 120, where ring110 consists of “m+1” stages namely (ring 1, stage 0), (ring 1, stage1), . . . (ring 1, stage “m−1”), and (ring 1, stage “m”), and ring 120consists of “n+1” stages namely (ring 2, stage 0), (ring 2, stage 1), .. . (ring 2, stage “n−1”), and (ring 2, stage “n”), where “m” and “n”are positive integers.

Ring 110 has inlet links Ri(1,1) and Ri(1,2), and has outlet linksBo(1,1) and Bo(1,2). Ring 120 has inlet links Fi(2,1) and Fi(2,2), andoutlet links Bo(2,1) and Bo(2,2). And hence the partial multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) 100A consists of 4 inlet linksand 4 outlet links corresponding to the two rings 110 and 120. Outletlink O1 of the computational block is connected to inlet link Ri(1,1) ofring 110 and also inlet link of Fi(2,1) of ring 120. Similarly outletlink O2 of the computational block is connected to inlet link Ri(1,2) ofRing 110 and also inlet link of Fi(2,2) of Ring 120. And outlet linkBo(1,1) of Ring 110 is connected to inlet link I1 of the computationalblock. Outlet link Bo(1,2) of Ring 110 is connected to inlet link I2 ofthe computational block. Similarly outlet link Bo(2,1) of Ring 120 isconnected to inlet link I3 of the computational block. Outlet linkBo(2,2) of Ring 120 is connected to inlet link I4 of the computationalblock. Since in this embodiment outlet link O1 of the computationalblock is connected to both inlet link Ri(1,1) of ring 110 and inlet linkFi(2,1) of ring 120; and outlet link O2 of the computational block isconnected to both inlet link Ri(1,2) of ring 110 and inlet link Fi(2,2)of ring 120, the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100A consists of 2 inlet links and 4 outlet links.

The two dimensional grid 800 in FIG. 8 illustrates an exemplaryarrangement of 100 blocks arranged in 10 rows and 10 columns, in anembodiment. Each row of 2D-grid consisting of 10 block numbers namelythe first row consists of the blocks (1,1), (1,2), (1,3), . . . , (1,9),and (1,10). The second row consists of the blocks (2,1), (2,2), (2,3), .. . , (2,9), and (2,10). Similarly 2D-grid 800 consists of 10 rows ofeach with 10 blocks and finally the tenth row consists of the blocks(10,1), (10,2), (10,3), . . . , (10,9), and (10,10). Each block of2D-grid 800, in one embodiment, is part of the die area of asemiconductor integrated circuit, so that the complete 2D-grid 800 of100 blocks represents the complete die of the semiconductor integratedcircuit. In one embodiment, each block of 2D-grid 800 consists of one ofthe partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100Awith 2 inlet links and 4 outlet links and the correspondingcomputational block with 4 inlet links and 2 outlet links. For exampleblock (1,1) of 2D-grid 800 consists of one of the partial multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) 100A with 2 inlet links and 4outlet links and the corresponding computational block with 4 inletlinks and 2 outlet links. Similarly each of the 100 blocks of 2D-grid800 has a separate partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100A with 2 inlet links and 4 outlet links and thecorresponding computational block with 4 inlet links and 2 outlet links.Hence the complete multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s)corresponding to 2D-grid 800 has N₁=200 inlet links and N₂=400 outletlinks. And there are 100 computational blocks each one corresponding toone of the blocks with each computational block having 4 inlet links and2 outlet links. Also the 2D-grid 800 is organized in the fourth quadrantof the 2D-Plane. In other embodiments the 2D-grid 800 may be organizedas either first quadrant, or second quadrant or third quadrant of the2D-Plane.

Referring to partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100A in FIG. 1A, the stage (ring 1, stage 0)consists of 4 inputs namely Ri(1,1), Ri(1,2), Ui(1,1), and Ui(1,2); and4 outputs Bo(1,1), Bo(1,2), Fo(1,1), and Fo(1,2). The stage (ring 1,stage 0) also consists of eight 2:1 multiplexers (A multiplexer ishereinafter called a “mux”) namely R(1,1), R(1,2), F(1,1), F(1,2),U(1,1), U(1,2), B(1,1), and B(1,2). The 2:1 Mux R(1,1) has two inputsnamely Ri(1,1) and Bo(1,1) and has one output Ro(1,1). The 2:1 MuxR(1,2) has two inputs namely Ri(1,2) and Bo(1,2) and has one outputRo(1,2). The 2:1 Mux F(1,1) has two inputs namely Ro(1,1) and Ro(1,2)and has one output Fo(1,1). The 2:1 Mux F(1,2) has two inputs namelyRo(1,1) and Ro(1,2) and has one output Fo(1,2).

The 2:1 Mux U(1,1) has two inputs namely Ui(1,1) and Fo(1,1) and has oneoutput Uo(1,1). The 2:1 Mux U(1,2) has two inputs namely Ui(1,2) andFo(1,2) and has one output Uo(1,2). The 2:1 Mux B(1,1) has two inputsnamely Uo(1,1) and Uo(1,2) and has one output Bo(1,1). The 2:1 MuxB(1,2) has two inputs namely Uo(1,1) and Uo(1,2) and has one outputBo(1,2).

The stage (ring 1, stage 1) consists of 4 inputs namely Ri(1,3),Ri(1,4), Ui(1,3), and Ui(1,4); and 4 outputs Bo(1,3), Bo(1,4), Fo(1,3),and Fo(1,4). The stage (ring 1, stage 1) also consists of eight 2:1Muxes namely R(1,3), R(1,4), F(1,3), F(1,4), U(1,3), U(1,4), B(1,3), andB(1,4). The 2:1 Mux R(1,3) has two inputs namely Ri(1,3) and Bo(1,3) andhas one output Ro(1,3). The 2:1 Mux R(1,4) has two inputs namely Ri(1,4)and Bo(1,4) and has one output Ro(1,4). The 2:1 Mux F(1,3) has twoinputs namely Ro(1,3) and Ro(1,4) and has one output Fo(1,3). The 2:1Mux F(1,4) has two inputs namely Ro(1,3) and Ro(1,4) and has one outputFo(1,4).

The 2:1 Mux U(1,3) has two inputs namely Ui(1,3) and Fo(1,3) and has oneoutput Uo(1,3). The 2:1 Mux U(1,4) has two inputs namely Ui(1,4) andFo(1,4) and has one output Uo(1,4). The 2:1 Mux B(1,3) has two inputsnamely Uo(1,3) and Uo(1,4) and has one output Bo(1,3). The 2:1 MuxB(1,4) has two inputs namely Uo(1,3) and Uo(1,4) and has one outputBo(1,4).

The output Fo(1,1) of the stage (ring 1, stage 0) is connected to theinput Ri(1,3) of the stage (ring 1, stage 1) which is called hereinafteran internal connection between two successive stages of a ring. And theoutput Bo(1,3) of the stage (ring 1, stage 1) is connected to the inputUi(1,1) of the stage (ring 1, stage 0), is another internal connectionbetween stage 0 and stage 1 of the ring 1.

The stage (ring 1, stage “m−1”) consists of 4 inputs namely Fi(1,2 m−1),Fi(1,2 m), Ui(1,2 m−1), and Ui(1,2 m); and 4 outputs Bo(1,2 m−1), Bo(1,2m), Fo(1,2 m−1), and Fo(1,2 m). The stage (ring 1, stage “m−1”) alsoconsists of six 2:1 Muxes namely F(1,2 m−1), F(1,2 m), U(1,2 m−1), U(1,2m), B(1,2 m−1), and B(1,2 m). The 2:1 Mux F(1,2 m−1) has two inputsnamely Fi(1,2 m−1) and Fi(1,2 m) and has one output Fo(1,2 m−1). The 2:1Mux F(1,2 m) has two inputs namely Fi(1,2 m−1) and Fi(1,2 m) and has oneoutput Fo(1,2 m).

The 2:1 Mux U(1,2 m−1) has two inputs namely Ui(1,2 m−1) and Fo(1,2 m−1)and has one output Uo(1,2 m−1). The 2:1 Mux U(1,2 m) has two inputsnamely Ui(1,2 m) and Fo(1,2 m) and has one output Uo(1,2 m). The 2:1 MuxB(1,2 m−1) has two inputs namely Uo(1,2 m−1) and Uo(1,2 m) and has oneoutput Bo(1,2 m−1). The 2:1 Mux B(1,2 m) has two inputs namely Uo(1,2m−1) and Uo(1,2 m) and has one output Bo(1,2 m).

The stage (ring 1, stage “m”) consists of 4 inputs namely Fi(1,2 m+1),Fi(1,2 m+2), Ui(1,2 m+1), and Ui(1,2 m+2); and 4 outputs Bo(1,2 m+1),Bo(1,2 m+2), Fo(1,2 m+1), and Fo(1,2 m+2). The stage (ring 1, stage “m”)also consists of six 2:1 Muxes namely F(1,2 m+1), F(1,2 m+2), U(1,2m+1), U(1,2 m+2), B(1,2 m+1), and B(1,2 m+2). The 2:1 Mux F(1,2 m+1) hastwo inputs namely Fi(1,2 m+1) and Fi(1,2 m+2) and has one output Fo(1,2m+1). The 2:1 Mux F(1,2 m+2) has two inputs namely Fi(1,2 m+1) andFi(1,2 m+2) and has one output Fo(1,2 m+2).

The 2:1 Mux U(1,2 m+1) has two inputs namely Ui(1,2 m+1) and Fo(1,2 m+1)and has one output Uo(1,2 m+1). The 2:1 Mux U(1,2 m+2) has two inputsnamely Ui(1,2 m+2) and Fo(1,2 m+2) and has one output Uo(1,2 m+2). The2:1 Mux B(1,2 m+1) has two inputs namely Uo(1,2 m+1) and Uo(1,2 m+2) andhas one output Bo(1,2 m+1). The 2:1 Mux B(1,2 m+2) has two inputs namelyUo(1,2 m+1) and Uo(1,2 m+2) and has one output Bo(1,2 m+2).

The output Fo(1,2 m−1) of the stage (ring 1, stage “m−1”) is connectedto the input Fi(1,2 m+1) of the stage (ring 1, stage “m”), is aninternal connection between stage “m−1” and stage “m” of the ring 1. Andthe output Bo(1,2 m+1) of the stage (ring 1, stage “m”) is connected tothe input Ui(1,2 m−1) of the stage (ring 1, stage “m−1”), is anotherinternal connection between stage “m−1” and stage “m” of the ring 1

Just the same way the stages (ring 1, stage 0), (ring 1, stage 1), thereare also stages (ring 1, stage 2), (ring 1, stage 3), . . . (ring 1,stage “m−1”), (ring 1, stage “m”) in that order, where the stages from(ring 1, stage 2), (ring 1, stage 3), . . . , (ring 1, stage “m−2”) arenot shown in the diagram 100A. Just the same way the two successivestages (ring 1, stage 0) and (ring 1, stage 1) have internal connectionsbetween them as described before, any two successive stages have similarinternal connections. For example (ring 1, stage 1) and (ring 1, stage2) have similar internal connections and (ring 1, stage “m−2”) and (ring1, stage “m−1”) have similar internal connections.

Stage (ring 1, stage 0) is also called hereinafter the “entry stage” or“first stage” of ring 1, since inlet links and outlet links of thecomputational block are directly connected to stage (ring 1, stage 0).Also stage (ring 1, stage “m”) is hereinafter the “last stage” or “rootstage” of ring 1.

The stage (ring 2, stage 0) consists of 4 inputs namely Fi(2,1),Fi(2,2), Ui(2,1), and Ui(2,2); and 4 outputs Bo(2,1), Bo(2,2), Fo(2,1),and Fo(2,2). The stage (ring 2, stage 0) also consists of six 2:1 Muxesnamely F(2,1), F(2,2), U(2,1), U(2,2), B(2,1), and B(2,2). The 2:1 MuxF(2,1) has two inputs namely Fi(2,1) and Fi(2,2) and has one outputFo(2,1). The 2:1 Mux F(2,2) has two inputs namely Fi(2,1) and Fi(2,2)and has one output Fo(2,2).

The 2:1 Mux U(2,1) has two inputs namely Ui(2,1) and Fo(2,1) and has oneoutput Uo(2,1). The 2:1 Mux U(2,2) has two inputs namely Ui(2,2) andFo(2,2) and has one output Uo(2,2). The 2:1 Mux B(2,1) has two inputsnamely Uo(2,1) and Uo(2,2) and has one output Bo(2,1). The 2:1 MuxB(2,2) has two inputs namely Uo(2,1) and Uo(2,2) and has one outputBo(2,2).

The stage (ring 2, stage 1) consists of 4 inputs namely Fi(2,3),Fi(2,4), Ui(2,3), and Ui(2,4); and 4 outputs Bo(2,3), Bo(2,4), Fo(2,3),and Fo(2,4). The stage (ring 2, stage 1) also consists of six 2:1 Muxesnamely F(2,3), F(2,4), U(2,3), U(2,4), B(2,3), and B(2,4). The 2:1 MuxF(2,3) has two inputs namely Fi(2,3) and Fi(2,4) and has one outputFo(2,3). The 2:1 Mux F(2,4) has two inputs namely Fi(2,3) and Fi(2,4)and has one output Fo(2,4).

The 2:1 Mux U(2,3) has two inputs namely Ui(2,3) and Fo(2,3) and has oneoutput Uo(2,3). The 2:1 Mux U(2,4) has two inputs namely Ui(2,4) andFo(2,4) and has one output Uo(2,4). The 2:1 Mux B(2,3) has two inputsnamely Uo(2,3) and Uo(2,4) and has one output Bo(2,3). The 2:1 MuxB(2,4) has two inputs namely Uo(2,3) and Uo(2,4) and has one outputBo(2,4).

The output Fo(2,1) of the stage (ring 2, stage 0) is connected to theinput Fi(2,3) of the stage (ring 2, stage 1), is an internal connectionbetween stage 0 and stage 1 of the ring 2. And the output Bo(2,3) of thestage (ring 2, stage 1) is connected to the input Ui(2,1) of the stage(ring 2, stage 0), is another internal connection between stage 0 andstage 1 of the ring 1.

The stage (ring 2, stage “n−1”) consists of 4 inputs namely Ri(2,2 n−1),Ri(2,2 n), Ui(1,2 n−1), and Ui(1,2 n); and 4 outputs Bo(1,2 n−1), Bo(1,2n), Fo(1,2 n−1), and Fo(1,2 n). The stage (ring 2, stage “n−1”) alsoconsists of eight 2:1 Muxes namely R(2,2 n−1), R(2,2 n), F(2,2 n−1),F(1,2 n), U(1,2 n−1), U(1,2 n), B(1,2 n−1), and B(1,2 n). The 2:1 MuxR(2,2 n−1) has two inputs namely Ri(2,2 n−1) and Bo(2,2 n−1) and has oneoutput Ro(2,2 n−1). The 2:1 Mux R(2,2 n) has two inputs namely Ri(2,2 n)and Bo(2,2 n) and has one output Ro(2,2 n). The 2:1 Mux F(2,2 n−1) hastwo inputs namely Ro(2,2 n−1) and Ro(2,2 n) and has one output Fo(2,2n−1). The 2:1 Mux F(2,2 n) has two inputs namely Ro(2,2 n−1) and Ro(2,2n) and has one output Fo(2,2 n).

The 2:1 Mux U(2,2 n−1) has two inputs namely Ui(2,2 n−1) and Fo(2,2 n−1)and has one output Uo(2,2 n−1). The 2:1 Mux U(2,2 n) has two inputsnamely Ui(2,2 n) and Fo(2,2 n) and has one output Uo(2,2 n). The 2:1 MuxB(2,2 n−1) has two inputs namely Uo(2,2 n−1) and Uo(2,2 n) and has oneoutput Bo(2,2 n−1). The 2:1 Mux B(2,2 n) has two inputs namely Uo(2,2n−1) and Uo(2,2 n) and has one output Bo(2,2 n).

The stage (ring 2, stage “n”) consists of 4 inputs namely Ri(2,2 n+1),Ri(2,2 n+2), Ui(2,2 n+1), and Ui(2,2 n+2); and 4 outputs Bo(2,2 n+1),Bo(2,2 n+2), Fo(2,2 n+1), and Fo(2,2 n+2). The stage (ring 2, stage “n”)also consists of eight 2:1 Muxes namely R(2,2 n+1), R(2,2 n+2), F(2,2n+1), F(2,2 n+2), U(2,2 n+1), U(2,2 n+2), B(2,2 n+1), and B(2,2 n+2).The 2:1 Mux R(2,2 n+1) has two inputs namely Ri(2,2 n+1) and Bo(2,2 n+1)and has one output Ro(2,2 n+1). The 2:1 Mux R(2,2 n+2) has two inputsnamely Ri(2,2 n+2) and Bo(2,2 n+2) and has one output Ro(2,2 n+2). The2:1 Mux F(2,2 n+1) has two inputs namely Ro(2,2 n+1) and Ro(2,2 n+2) andhas one output Fo(2,2 n+1). The 2:1 Mux F(2,2 n+2) has two inputs namelyRo(2,2 n+1) and Ro(2,2 n+2) and has one output Fo(2,2 n+2).

The 2:1 Mux U(2,2 n+1) has two inputs namely Ui(2,2 n+1) and Fo(2,2 n+1)and has one output Uo(2,2 n+1). The 2:1 Mux U(2,2 n+2) has two inputsnamely Ui(2,2 n+2) and Fo(2,2 n+2) and has one output Uo(2,2 n+2). The2:1 Mux B(2,2 n+1) has two inputs namely Uo(2,2 n+1) and Uo(2,2 n+2) andhas one output Bo(2,2 n+1). The 2:1 Mux B(2,2 n+2) has two inputs namelyUo(2,2 n+1) and Uo(2,2 n+2) and has one output Bo(2,2 n+2).

The output Fo(2,2 n−1) of the stage (ring 2, stage “n−1”) is connectedto the input Ri(2,2 n+1) of the stage (ring 2, stage “n”), is aninternal connection between stage “n−1” and stage “n” of the ring 1. Andthe output Bo(2,2 n+1) of the stage (ring 2, stage “n”) is connected tothe input Ui(2,2 n−1) of the stage (ring 2, stage “n−1”), is anotherinternal connection between stage “n−1” and stage “n” of the ring 1.

Each stage of any ring of the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100A consists of 4 inputs and 2*d=4 outputs. Eventhough the stages (ring 1, stage 0), (ring 1, stage 1), (ring 2, stage“n−1”), and (ring 2, stage “n”) each have eight 2:1 muxes, and thestages (ring 2, stage 0), (ring 2, stage 1), (ring 1, stage “m−1”), and(ring 1, stage “m”) each have six 2:1 muxes, in other embodiments any ofthese stages can be one of the four by four switch diagrams namely 200Aof FIG. 2A, 200B of FIG. 2B, 200C of FIG. 2C, and one of the eight byfour switch diagrams namely 200E of FIG. 2E, 200F of FIG. 2F.

Referring to diagram 100B in FIG. 1B, in one embodiment, an exemplarypartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) whereN₁=400; N₂=800; d=2; and s=1 corresponding to one computational block,with each computational block having 8 inlet links namely I1, I2, I3,I4, I5, I6, I7, and I8; and 4 outlet links namely O1, O2, O3, and O4.And for each computational block the corresponding partial multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) 100B consists of two rings 110and 120, where ring 110 consists of “m+1” stages namely (ring 1, stage0), (ring 1, stage 1), . . . (ring 1, stage “m−1”), and (ring 1, stage“m”), and ring 120 consists of “n+1” stages namely (ring 2, stage 0),(ring 2, stage 1), . . . (ring 2, stage “n−1”), and (ring 2, stage “n”),where “m” and “n” are positive integers.

Ring 110 has inlet links Ri(1,1) and Ri(1,2) from the left-hand side,and has outlet links Bo(1,1) and Bo(1,2) from left-hand side. Ring 110also has inlet links Ui(1,2 m+1) and Ui(1,2 m+2) from the right-handside, and has outlet links Fo(1,2 m+1) and Fo(1,2 m+2) from right-handside. Ring 120 has inlet links Fi(2,1) and Fi(2,2) from left-hand side,and outlet links Bo(2,1) and Bo(2,2) from left-hand side. Ring 120 alsohas inlet links Ui(2,2 n+1) and Ui(2,2 n+2) from the right-hand side,and has outlet links Fo(2,2 n+1) and Fo(2,2 n+2) from right-hand side.

And the partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s)100B consists of 8 inlet links and 4 outlet links corresponding to thetwo rings 110 and 120. From left-hand side, outlet link O1 of thecomputational block is connected to inlet link Ri(1,1) of ring 110 andalso inlet link of Fi(2,1) of ring 120. Similarly from left-hand side,outlet link O2 of the computational block is connected to inlet linkRi(1,2) of Ring 110 and also inlet link of Fi(2,2) of Ring 120. And fromleft-hand side, outlet link Bo(1,1) of Ring 110 is connected to inletlink I1 of the computational block. From left-hand side, Outlet linkBo(1,2) of Ring 110 is connected to inlet link I2 of the computationalblock. Similarly from left-hand side, outlet link Bo(2,1) of Ring 120 isconnected to inlet link I3 of the computational block. From left-handside, outlet link Bo(2,2) of Ring 120 is connected to inlet link I4 ofthe computational block.

From right-hand side, outlet link O3 of the computational block isconnected to inlet link Ui(1,2 m+1) of ring 110 and also inlet link ofUi(2,2 n+1) of ring 120. Similarly from right-hand side, outlet link O4of the computational block is connected to inlet link Ui(1,2 m+2) ofRing 110 and also inlet link of Ui(2,2 n+2) of Ring 120. And fromright-hand side, outlet link Fo(1,2 m+1) of Ring 110 is connected toinlet link I5 of the computational block. From right-hand side, outletlink Fo(1,2 m+2) of Ring 110 is connected to inlet link I6 of thecomputational block. Similarly from right-hand side, outlet link Fo(2,2n+1) of Ring 120 is connected to inlet link I7 of the computationalblock. From right-hand side, outlet link Fo(2,2 n+2) of Ring 120 isconnected to inlet link I8 of the computational block.

Since in this embodiment outlet link O1 of the computational block isconnected to both inlet link Ri(1,1) of ring 110 and inlet link Fi(2,1)of ring 120; outlet link O2 of the computational block is connected toboth inlet link Ri(1,2) of ring 110 and inlet link Fi(2,2) of ring 120;outlet link O3 of the computational block is connected to both inletlink Ui(1,2 m+1) of ring 110 and inlet link Ui(2,2 n+1) of ring 120; andoutlet link O4 of the computational block is connected to both inletlink Ui(1,2 m+2) of ring 110 and inlet link Ui(2,2 n+2) of ring 120, thepartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100Bconsists of 4 inlet links and 8 outlet links.

Referring to two dimensional grid 800 in FIG. 8 illustrates, in anotherembodiment, each block of 2D-grid 800 consists of one of the partialmulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100B with 4 inletlinks and 8 outlet links and the corresponding computational block with8 inlet links and 4 outlet links. For example block (1,1) of 2D-grid 800consists of one of the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100B with 4 inlet links and 8 outlet links and thecorresponding computational block with 8 inlet links and 4 outlet links.Similarly each of the 100 blocks of 2D-grid 800 has a separate partialmulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100B with 4 inletlinks and 8 outlet links and the corresponding computational block with8 inlet links and 4 outlet links. Hence the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) corresponding to 2D-grid 800has N₁=400 inlet links and N₂=800 outlet links. Since there are 100computational blocks each one corresponding to one of the blocks witheach computational block having 8 inlet links and 4 outlet links. Alsothe 2D-grid 800 is organized in the fourth quadrant of the 2D-Plane. Inother embodiments the 2D-grid 800 may be organized as either firstquadrant, or second quadrant or third quadrant of the 2D-Plane.

Referring to partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100B in FIG. 1B, the stage (ring 1, stage 0)consists of 4 inputs namely Ri(1,1), Ri(1,2), Ui(1,1), and Ui(1,2); and4 outputs Bo(1,1), Bo(1,2), Fo(1,1), and Fo(1,2). The stage (ring 1,stage 0) also consists of eight 2:1 multiplexers (A multiplexer ishereinafter called a “mux”) namely R(1,1), R(1,2), F(1,1), F(1,2),U(1,1), U(1,2), B(1,1), and B(1,2). The 2:1 Mux R(1,1) has two inputsnamely Ri(1,1) and Bo(1,1) and has one output Ro(1,1). The 2:1 MuxR(1,2) has two inputs namely Ri(1,2) and Bo(1,2) and has one outputRo(1,2). The 2:1 Mux F(1,1) has two inputs namely Ro(1,1) and Ro(1,2)and has one output Fo(1,1). The 2:1 Mux F(1,2) has two inputs namelyRo(1,1) and Ro(1,2) and has one output Fo(1,2).

The 2:1 Mux U(1,1) has two inputs namely Ui(1,1) and Fo(1,1) and has oneoutput Uo(1,1). The 2:1 Mux U(1,2) has two inputs namely Ui(1,2) andFo(1,2) and has one output Uo(1,2). The 2:1 Mux B(1,1) has two inputsnamely Uo(1,1) and Uo(1,2) and has one output Bo(1,1). The 2:1 MuxB(1,2) has two inputs namely Uo(1,1) and Uo(1,2) and has one outputBo(1,2).

The stage (ring 1, stage 1) consists of 4 inputs namely Ri(1,3),Ri(1,4), Ui(1,3), and Ui(1,4); and 4 outputs Bo(1,3), Bo(1,4), Fo(1,3),and Fo(1,4). The stage (ring 1, stage 1) also consists of eight 2:1Muxes namely R(1,3), R(1,4), F(1,3), F(1,4), U(1,3), U(1,4), B(1,3), andB(1,4). The 2:1 Mux R(1,3) has two inputs namely Ri(1,3) and Bo(1,3) andhas one output Ro(1,3). The 2:1 Mux R(1,4) has two inputs namely Ri(1,4)and Bo(1,4) and has one output Ro(1,4). The 2:1 Mux F(1,3) has twoinputs namely Ro(1,3) and Ro(1,4) and has one output Fo(1,3). The 2:1Mux F(1,4) has two inputs namely Ro(1,3) and Ro(1,4) and has one outputFo(1,4).

The 2:1 Mux U(1,3) has two inputs namely Ui(1,3) and Fo(1,3) and has oneoutput Uo(1,3). The 2:1 Mux U(1,4) has two inputs namely Ui(1,4) andFo(1,4) and has one output Uo(1,4). The 2:1 Mux B(1,3) has two inputsnamely Uo(1,3) and Uo(1,4) and has one output Bo(1,3). The 2:1 MuxB(1,4) has two inputs namely Uo(1,3) and Uo(1,4) and has one outputBo(1,4).

The output Fo(1,1) of the stage (ring 1, stage 0) is connected to theinput Ri(1,3) of the stage (ring 1, stage 1) which is called hereinafteran internal connection between two successive stages of a ring. And theoutput Bo(1,3) of the stage (ring 1, stage 1) is connected to the inputUi(1,1) of the stage (ring 1, stage 0), is another internal connectionbetween stage 0 and stage 1 of the ring 1.

The stage (ring 1, stage “m−1”) consists of 4 inputs namely Fi(1,2 m−1),Fi(1,2 m), Ui(1,2 m−1), and Ui(1,2 m); and 4 outputs Bo(1,2 m−1), Bo(1,2m), Fo(1,2 m−1), and Fo(1,2 m). The stage (ring 1, stage “m−1”) alsoconsists of six 2:1 Muxes namely F(1,2 m−1), F(1,2 m), U(1,2 m−1), U(1,2m), B(1,2 m−1), and B(1,2 m). The 2:1 Mux F(1,2 m−1) has two inputsnamely Fi(1,2 m−1) and Fi(1,2 m) and has one output Fo(1,2 m−1). The 2:1Mux F(1,2 m) has two inputs namely Fi(1,2 m−1) and Fi(1,2 m) and has oneoutput Fo(1,2 m).

The 2:1 Mux U(1,2 m−1) has two inputs namely Ui(1,2 m−1) and Fo(1,2 m−1)and has one output Uo(1,2 m−1). The 2:1 Mux U(1,2 m) has two inputsnamely Ui(1,2 m) and Fo(1,2 m) and has one output Uo(1,2 m). The 2:1 MuxB(1,2 m−1) has two inputs namely Uo(1,2 m−1) and Uo(1,2 m) and has oneoutput Bo(1,2 m−1). The 2:1 Mux B(1,2 m) has two inputs namely Uo(1,2m−1) and Uo(1,2 m) and has one output Bo(1,2 m).

The stage (ring 1, stage “m”) consists of 4 inputs namely Fi(1,2 m+1),Fi(1,2 m+2), Ui(1,2 m+1), and Ui(1,2 m+2); and 4 outputs Bo(1,2 m+1),Bo(1,2 m+2), Fo(1,2 m+1), and Fo(1,2 m+2). The stage (ring 1, stage “m”)also consists of six 2:1 Muxes namely F(1,2 m+1), F(1,2 m+2), U(1,2m+1), U(1,2 m+2), B(1,2 m+1), and B(1,2 m+2). The 2:1 Mux F(1,2 m+1) hastwo inputs namely Fi(1,2 m+1) and Fi(1,2 m+2) and has one output Fo(1,2m+1). The 2:1 Mux F(1,2 m+2) has two inputs namely Fi(1,2 m+1) andFi(1,2 m+2) and has one output Fo(1,2 m+2).

The 2:1 Mux U(1,2 m+1) has two inputs namely Ui(1,2 m+1) and Fo(1,2 m+1)and has one output Uo(1,2 m+1). The 2:1 Mux U(1,2 m+2) has two inputsnamely Ui(1,2 m+2) and Fo(1,2 m+2) and has one output Uo(1,2 m+2). The2:1 Mux B(1,2 m+1) has two inputs namely Uo(1,2 m+1) and Uo(1,2 m+2) andhas one output Bo(1,2 m+1). The 2:1 Mux B(1,2 m+2) has two inputs namelyUo(1,2 m+1) and Uo(1,2 m+2) and has one output Bo(1,2 m+2).

The output Fo(1,2 m−1) of the stage (ring 1, stage “m−1”) is connectedto the input Fi(1,2 m+1) of the stage (ring 1, stage “m”), is aninternal connection between stage “m−1” and stage “m” of the ring 1. Andthe output Bo(1,2 m+1) of the stage (ring 1, stage “m”) is connected tothe input Ui(1,2 m−1) of the stage (ring 1, stage “m−1”), is anotherinternal connection between stage “m−1” and stage “m” of the ring 1

Just the same way the stages (ring 1, stage 0), (ring 1, stage 1), thereare also stages (ring 1, stage 2), (ring 1, stage 3), . . . (ring 1,stage “m−1”), (ring 1, stage “m”) in that order, where the stages from(ring 1, stage 2), (ring 1, stage 3), . . . , (ring 1, stage “m−2”) arenot shown in the diagram 100B. Just the same way the two successivestages (ring 1, stage 0) and (ring 1, stage 1) have internal connectionsbetween them as described before, any two successive stages have similarinternal connections. For example (ring 1, stage 1) and (ring 1, stage2) have similar internal connections and (ring 1, stage “m−2”) and (ring1, stage “m−1”) have similar internal connections.

Stage (ring 1, stage 0) is also called hereinafter the “entry stage” or“first stage” of ring 1, since inlet links and outlet links of thecomputational block are directly connected to stage (ring 1, stage 0).Also stage (ring 1, stage “m”) is hereinafter the “last stage” or “rootstage” of ring 1.

The stage (ring 2, stage 0) consists of 4 inputs namely Fi(2,1),Fi(2,2), Ui(2,1), and Ui(2,2); and 4 outputs Bo(2,1), Bo(2,2), Fo(2,1),and Fo(2,2). The stage (ring 2, stage 0) also consists of six 2:1 Muxesnamely F(2,1), F(2,2), U(2,1), U(2,2), B(2,1), and B(2,2). The 2:1 MuxF(2,1) has two inputs namely Fi(2,1) and Fi(2,2) and has one outputFo(2,1). The 2:1 Mux F(2,2) has two inputs namely Fi(2,1) and Fi(2,2)and has one output Fo(2,2).

The 2:1 Mux U(2,1) has two inputs namely Ui(2,1) and Fo(2,1) and has oneoutput Uo(2,1). The 2:1 Mux U(2,2) has two inputs namely Ui(2,2) andFo(2,2) and has one output Uo(2,2). The 2:1 Mux B(2,1) has two inputsnamely Uo(2,1) and Uo(2,2) and has one output Bo(2,1). The 2:1 MuxB(2,2) has two inputs namely Uo(2,1) and Uo(2,2) and has one outputBo(2,2).

The stage (ring 2, stage 1) consists of 4 inputs namely Fi(2,3),Fi(2,4), Ui(2,3), and Ui(2,4); and 4 outputs Bo(2,3), Bo(2,4), Fo(2,3),and Fo(2,4). The stage (ring 2, stage 1) also consists of six 2:1 Muxesnamely F(2,3), F(2,4), U(2,3), U(2,4), B(2,3), and B(2,4). The 2:1 MuxF(2,3) has two inputs namely Fi(2,3) and Fi(2,4) and has one outputFo(2,3). The 2:1 Mux F(2,4) has two inputs namely Fi(2,3) and Fi(2,4)and has one output Fo(2,4).

The 2:1 Mux U(2,3) has two inputs namely Ui(2,3) and Fo(2,3) and has oneoutput Uo(2,3). The 2:1 Mux U(2,4) has two inputs namely Ui(2,4) andFo(2,4) and has one output Uo(2,4). The 2:1 Mux B(2,3) has two inputsnamely Uo(2,3) and Uo(2,4) and has one output Bo(2,3). The 2:1 MuxB(2,4) has two inputs namely Uo(2,3) and Uo(2,4) and has one outputBo(2,4).

The output Fo(2,1) of the stage (ring 2, stage 0) is connected to theinput Fi(2,3) of the stage (ring 2, stage 1), is an internal connectionbetween stage 0 and stage 1 of the ring 2. And the output Bo(2,3) of thestage (ring 2, stage 1) is connected to the input Ui(2,1) of the stage(ring 2, stage 0), is another internal connection between stage 0 andstage 1 of the ring 1.

The stage (ring 2, stage “n−1”) consists of 4 inputs namely Ri(2,2 n−1),Ri(2,2 n), Ui(1,2 n−1), and Ui(1,2 n); and 4 outputs Bo(1,2 n−1), Bo(1,2n), Fo(1,2 n−1), and Fo(1,2 n). The stage (ring 2, stage “n−1”) alsoconsists of eight 2:1 Muxes namely R(2,2 n−1), R(2,2 n), F(2,2 n−1),F(1,2 n), U(1,2 n−1), U(1,2 n), B(1,2 n−1), and B(1,2 n). The 2:1 MuxR(2,2 n−1) has two inputs namely Ri(2,2 n−1) and Bo(2,2 n−1) and has oneoutput Ro(2,2 n−1). The 2:1 Mux R(2,2 n) has two inputs namely Ri(2,2 n)and Bo(2,2 n) and has one output Ro(2,2 n). The 2:1 Mux F(2,2 n−1) hastwo inputs namely Ro(2,2 n−1) and Ro(2,2 n) and has one output Fo(2,2n−1). The 2:1 Mux F(2,2 n) has two inputs namely Ro(2,2 n−1) and Ro(2,2n) and has one output Fo(2,2 n).

The 2:1 Mux U(2,2 n−1) has two inputs namely Ui(2,2 n−1) and Fo(2,2 n−1)and has one output Uo(2,2 n−1). The 2:1 Mux U(2,2 n) has two inputsnamely Ui(2,2 n) and Fo(2,2 n) and has one output Uo(2,2 n). The 2:1 MuxB(2,2 n−1) has two inputs namely Uo(2,2 n−1) and Uo(2,2 n) and has oneoutput Bo(2,2 n−1). The 2:1 Mux B(2,2 n) has two inputs namely Uo(2,2n−1) and Uo(2,2 n) and has one output Bo(2,2 n).

The stage (ring 2, stage “n”) consists of 4 inputs namely Ri(2,2 n+1),Ri(2,2 n+2), Ui(2,2 n+1), and Ui(2,2 n+2); and 4 outputs Bo(2,2 n+1),Bo(2,2 n+2), Fo(2,2 n+1), and Fo(2,2 n+2). The stage (ring 2, stage “n”)also consists of eight 2:1 Muxes namely R(2,2 n+1), R(2,2 n+2), F(2,2n+1), F(2,2 n+2), U(2,2 n+1), U(2,2 n+2), B(2,2 n+1), and B(2,2 n+2).The 2:1 Mux R(2,2 n+1) has two inputs namely Ri(2,2 n+1) and Bo(2,2 n+1)and has one output Ro(2,2 n+1). The 2:1 Mux R(2,2 n+2) has two inputsnamely Ri(2,2 n+2) and Bo(2,2 n+2) and has one output Ro(2,2 n+2). The2:1 Mux F(2,2 n+1) has two inputs namely Ro(2,2 n+1) and Ro(2,2 n+2) andhas one output Fo(2,2 n+1). The 2:1 Mux F(2,2 n+2) has two inputs namelyRo(2,2 n+1) and Ro(2,2 n+2) and has one output Fo(2,2 n+2).

The 2:1 Mux U(2,2 n+1) has two inputs namely Ui(2,2 n+1) and Fo(2,2 n+1)and has one output Uo(2,2 n+1). The 2:1 Mux U(2,2 n+2) has two inputsnamely Ui(2,2 n+2) and Fo(2,2 n+2) and has one output Uo(2,2 n+2). The2:1 Mux B(2,2 n+1) has two inputs namely Uo(2,2 n+1) and Uo(2,2 n+2) andhas one output Bo(2,2 n+1). The 2:1 Mux B(2,2 n+2) has two inputs namelyUo(2,2 n+1) and Uo(2,2 n+2) and has one output Bo(2,2 n+2).

The output Fo(2,2 n−1) of the stage (ring 2, stage “n−1”) is connectedto the input Ri(2,2 n+1) of the stage (ring 2, stage “n”), is aninternal connection between stage “n−1” and stage “n” of the ring 1. Andthe output Bo(2,2 n+1) of the stage (ring 2, stage “n”) is connected tothe input Ui(2,2 n−1) of the stage (ring 2, stage “n−1”), is anotherinternal connection between stage “n−1” and stage “n” of the ring 1.

Each stage of any ring of the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100B consists of 2*d=4 outputs. Even though eachstage has four 4:1 muxes, in other embodiments any of these stages canbe one of the four by four switch diagrams namely 200A of FIG. 2A, 200Bof FIG. 2B, 200C of FIG. 2C, and one of the eight by four switchdiagrams namely 200E of FIG. 2E, 200F of FIG. 2F.

In general, any ring of the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) may have inputs and outputs connected fromcomputational block from either only from left-hand side as in thepartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100A; oronly from right-hand side; or from both left-hand and right-hand sidesas in the partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s)100B.

Referring to diagram 100C in FIG. 1C, in one embodiment, an exemplarypartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) whereN₁=400; N₂=1600; d=2; and s=1 corresponding to one computational block,with each computational block having 16 inlet links namely I1, I2, I3,I4, I5, I6, I7, I8, I9, I10, I11, I12, I13, I14, I15, and I16; and 4outlet links namely O1, O2, O3, and O4. And for each computational blockthe corresponding partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100C consists of two slices namely slice 1 and slice2. Slice 1 consists of two rings namely (slice 1, ring 1) and (slice 1,ring 2). Similarly slice 2 consists of two rings namely (slice 2, ring1) and (slice 2, ring 2).

The ring (slice 1, ring 1) consists of “m+1” stages namely (slice 1,ring 1, stage 0), (slice 1, ring 1, stage 1), . . . (slice 1, ring 1,stage “m−1”), and (slice 1, ring 1, stage “m”). And the ring (slice 1,ring 2) consists of “n+1” stages namely (slice 1, ring 2, stage 0),(slice 1, ring 2, stage 1), . . . (slice 1, ring 2, stage “n−1”), and(slice 1, ring 2, stage “n”), where “m” and “n” are positive integers.

Similarly the ring (slice 2, ring 1) consists of “x+1” stages namely(slice 2, ring 1, stage 0), (slice 2, ring 1, stage 1), . . . (slice 2,ring 1, stage “x−1”), and (slice 2, ring 1, stage “x”). And the ring(slice 2, ring 2) consists of “y+1” stages namely (slice 2, ring 2,stage 0), (slice 2, ring 2, stage 1), . . . (slice 2, ring 2, stage“y−1”), and (slice 2, ring 2, stage “y”), where “x” and “y” are positiveintegers.

In general “m” may be or may not be equal to “x” and “n” may be or maynot be equal to “y”. Also in general, “m” may be or may not be equal to“n” and “x” may be or may not be equal to “y”.

Ring (slice 1, ring 1) has inlet links Ri(1,1,1) and Ri(1,1,2) from theleft-hand side, and has outlet links Bo(1,1,1) and Bo(1,1,2) fromleft-hand side. Ring (slice 1, ring 1) also has inlet links Ui(1,1,2m+1) and Ui(1,1,2 m+2) from the right-hand side, and has outlet linksFo(1,1,2 m+1) and Fo(1,1,2 m+2) from right-hand side. Ring (slice 1,ring 2) has inlet links Ri(1,2,1) and Ri(1,2,2) from left-hand side, andoutlet links Bo(1,2,1) and Bo(1,2,2) from left-hand side. Ring (slice 1,ring 2) also has inlet links Ui(1,2,2 n+1) and Ui(1,2,2 n+2) from theright-hand side, and has outlet links Fo(1,2,2 n+1) and Fo(1,2,2 n+2)from right-hand side.

Ring (slice 2, ring 1) has inlet links Ri(2,1,1) and Ri(2,1,2) from theleft-hand side, and has outlet links Bo(2,1,1) and Bo(2,1,2) fromleft-hand side. Ring (slice 2, ring 1) also has inlet links Ui(2,1,2x+1) and Ui(2,1,2 x+2) from the right-hand side, and has outlet linksFo(2,1,2 x+1) and Fo(2,1,2 x+2) from right-hand side. Ring (slice 2,ring 2) has inlet links Ri(2,2,1) and Ri(2,2,2) from left-hand side, andoutlet links Bo(2,2,1) and Bo(2,2,2) from left-hand side. Ring (slice 2,ring 2) also has inlet links Ui(2,2,2 y+1) and Ui(2,2,2 y+2) from theright-hand side, and has outlet links Fo(2,2,2 y+1) and Fo(2,2,2 y+2)from right-hand side.

And the partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s)100C consists of 16 inlet links and 4 outlet links corresponding to thetwo slices slice 1 and slice 2. From left-hand side, outlet link O1 ofthe computational block is connected to inlet link Ri(1,1,1) of ring(slice 1, ring 1) and also inlet link of Ri(1,2,1) of ring (slice 1,ring 2). Similarly from left-hand side, outlet link O2 of thecomputational block is connected to inlet link Ri(1,1,2) of Ring (slice1, ring 1) and also inlet link of Ri(1,2,2) of Ring (slice 1, ring 2).And from left-hand side, outlet link Bo(1,1,1) of Ring (slice 1, ring 1)is connected to inlet link I1 of the computational block. From left-handside, Outlet link Bo(1,1,2) of Ring (slice 1, ring 1) is connected toinlet link I2 of the computational block. Similarly from left-hand side,outlet link Bo(1,2,1) of Ring (slice 1, ring 2) is connected to inletlink I3 of the computational block. From left-hand side, outlet linkBo(1,2,2) of Ring (slice 1, ring 2) is connected to inlet link I4 of thecomputational block.

From right-hand side, outlet link O1 of the computational block isconnected to inlet link Ui(1,1,2 m+1) of ring (slice 1, ring 1) and alsoinlet link of Ui(1,2,2 n+1) of ring (slice 1, ring 2). Similarly fromright-hand side, outlet link O2 of the computational block is connectedto inlet link Ui(1,1,2 m+2) of Ring (slice 1, ring 1) and also inletlink of Ui(1,2,2 n+2) of Ring (slice 1, ring 2). And from right-handside, outlet link Fo(1,1,2 m+1) of Ring (slice 1, ring 1) is connectedto inlet link I5 of the computational block. From right-hand side,outlet link Fo(1,1,2 m+2) of Ring (slice 1, ring 1) is connected toinlet link I6 of the computational block. Similarly from right-handside, outlet link Fo(1,2,2 n+1) of Ring (slice 1, ring 2) is connectedto inlet link I7 of the computational block. From right-hand side,outlet link Fo(1,2,2 n+2) of Ring (slice 1, ring 2) is connected toinlet link I8 of the computational block.

From left-hand side, outlet link O3 of the computational block isconnected to inlet link Ri(2,1,1) of ring (slice 2, ring 1) and alsoinlet link of Ri(2,2,1) of ring (slice 2, ring 2). Similarly fromleft-hand side, outlet link O4 of the computational block is connectedto inlet link Ri(2,1,2) of Ring (slice 2, ring 1) and also inlet link ofRi(2,2,2) of Ring (slice 2, ring 2). And from left-hand side, outletlink Bo(2,1,1) of Ring (slice 2, ring 1) is connected to inlet link I9of the computational block. From left-hand side, Outlet link Bo(2,1,2)of Ring (slice 2, ring 1) is connected to inlet link I10 of thecomputational block. Similarly from left-hand side, outlet linkBo(2,2,1) of Ring (slice 2, ring 2) is connected to inlet link I11 ofthe computational block. From left-hand side, outlet link Bo(2,2,2) ofRing (slice 2, ring 2) is connected to inlet link I12 of thecomputational block.

From right-hand side, outlet link O3 of the computational block isconnected to inlet link Ui(2,1,2 x+1) of ring (slice 2, ring 1) and alsoinlet link of Ui(2,2,2 y+1) of ring (slice 2, ring 2). Similarly fromright-hand side, outlet link O4 of the computational block is connectedto inlet link Ui(2,1,2 x+2) of Ring (slice 2, ring 1) and also inletlink of Ui(2,2,2 y+2) of Ring (slice 2, ring 2). And from right-handside, outlet link Fo(2,1,2 x+1) of Ring (slice 2, ring 1) is connectedto inlet link I13 of the computational block. From right-hand side,outlet link Fo(2,1,2 x+2) of Ring (slice 2, ring 1) is connected toinlet link I14 of the computational block. Similarly from right-handside, outlet link Fo(2,2,2 y+1) of Ring (slice 2, ring 2) is connectedto inlet link I15 of the computational block. From right-hand side,outlet link Fo(2,2,2 y+2) of Ring (slice 2, ring 2) is connected toinlet link I16 of the computational block.

In this embodiment outlet links O1 and O2 of the computational block areconnected only to slice 1. Similarly outlet links O3 and O4 of thecomputational block are connected only to slice 2.

Referring to two dimensional grid 800 in FIG. 8 illustrates, in anotherembodiment, each block of 2D-grid 800 consists of one of the partialmulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100C with 4 inletlinks and 16 outlet links and the corresponding computational block with16 inlet links and 4 outlet links. For example block (1,1) of 2D-grid800 consists of one of the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100C with 4 inlet links and 16 outlet links and thecorresponding computational block with 16 inlet links and 4 outletlinks. Similarly each of the 100 blocks of 2D-grid 800 has a separatepartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100C with 4inlet links and 16 outlet links and the corresponding computationalblock with 16 inlet links and 4 outlet links. Hence the completemulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s) corresponding to2D-grid 800 has N₁=400 inlet links and N₂=1600 outlet links. Since thereare 100 computational blocks each one corresponding to one of the blockswith each computational block having 16 inlet links and 4 outlet links.Also the 2D-grid 800 is organized in the fourth quadrant of the2D-Plane. In other embodiments the 2D-grid 800 may be organized aseither first quadrant, or second quadrant or third quadrant of the2D-Plane.

Referring to partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100C in FIG. 1C, the stage (slice 1, ring 1, stage0) consists of 8 inputs namely Ri(1,1,1), Ri(1,1,2), Ui(1,1,1),Ui(1,1,2), J(1,1,1), K(1,1,1), L(1,1,1), and M(1,1,1); and 4 outputsBo(1,1,1), Bo(1,1,2), Fo(1,1,1), and Fo(1,1,2). The stage (slice 1, ring“1”, stage “0”) also consists of four 4:1 Muxes namely F(1,1,1),F(1,1,2), B(1,1,1), and B(1,1,2). The 4:1 Mux F(1,1,1) has four inputsnamely Ri(1,1,1), Ri(1,1,2), Ui(1,1,2), and J(1,1,1), and has one outputFo(1,1,1). The 4:1 Mux F(1,1,2) has four inputs namely Ri(1,1,1),Ri(1,1,2), Ui(1,1,1), and K(1,1,1), and has one output Fo(1,1,2).

The 4:1 Mux B(1,1,1) has four inputs namely Ui(1,1,1), Ui(1,1,2),Ri(1,1,2), and L(1,1,1), and has one output Bo(1,1,1). The 4:1 MuxB(1,1,2) has four inputs namely Ui(1,1,1), Ui(1,1,2), Ri(1,1,1) andM(1,1,1), and has one output Bo(1,1,2). In different embodiments theinputs J(1,1,1), K(1,1,1), L(1,1,1), and M(1,1,1) are connected from anyof the outputs of any other stages of any ring of any block of themulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (slice 1, ring 1, stage “m”) consists of 8 inputs namelyRi(1,1,2 m+1), Ri(1,1,2 m+2), Ui(1,1,2 m+1), Ui(1,1,2 m+2), J(1,1,m+1),K(1,1,m+1), L(1,1,m+1), and M(1,1,m+1); and 4 outputs Bo(1,1,2 m+1),Bo(1,1,2 m+2), Fo(1,1,2 m+1), and Fo(1,1,2 m+2). The stage (slice 1,ring 1, stage “m”) also consists of four 4:1 Muxes namely F(1,1,2 m+1),F(1,1,2 m+2), B(1,1,2 m+1), and B(1,1,2 m+2). The 4:1 Mux F(1,1,2 m+1)has four inputs namely Ri(1,1,2 m+1), Ri(1,1,2 m+2), Ui(1,1,2 m+2), andJ(1,1,m+1), and has one output Fo(1,1,2 m+1). The 4:1 Mux F(1,1,2 m+2)has four inputs namely Ri(1,1,2 m+1), Ri(1,1,2 m+2), Ui(1,1,2 m+1), andK(1,1,m+1), and has one output Fo(1,1,2 m+2).

The 4:1 Mux B(1,1,2 m+1) has four inputs namely Ui(1,1,2 m+1), Ui(1,1,2m+2), Ri(1,1,2 m+2), and L(1,1,m+1), and has one output Bo(1,1,2 m+1).The 4:1 Mux B(1,1,2 m+2) has four inputs namely Ui(1,1,2 m+1), Ui(1,1,2m+2), Ri(1,1,2 m+1) and M(1,1,m+1), and has one output Bo(1,1,2 m+2). Indifferent embodiments the inputs J(1,1,m+1), K(1,1,m+1), L(1,1,m+1), andM(1,1,m+1) are connected from any of the outputs of any other stages ofany ring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

Just the same way the stage (slice 1, ring 1, stage 0), there are alsostages (slice 1, ring 1, stage 1), (slice 1, ring 1, stage 2), (slice 1,ring 1, stage 3), . . . (slice 1, ring 1, stage “m−1”), (slice 1, ring1, stage “m”) in that order, where the stages from (slice 1, ring 1,stage 1), (slice 1, ring 1, stage 2), . . . , (slice 1, ring 1, stage“m−1”) are not shown in the diagram 100C.

Referring to diagram 100C5 in FIG. 1C5 illustrates specific details ofpartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100C inFIG. 1C, particularly the internal connections between two successivestages of any ring of any slice, in one embodiment. The stage (slice“c”, ring “d”, stage “e”) consists of 8 inputs namely Ri(c,d,2 e+1),Ri(c,d,2 e+2), Ui(c,d,2 e+1), Ui(c,d,2 e+2), J(c,d,e+1), K(c,d,e+1),L(c,d,e+1), and M(c,d,e+1); and 4 outputs Bo(c,d,2 e+1), Bo(c,d,2 e+2),Fo(c,d,2 e+1), and Fo(c,d,2 e+2). The stage (slice “c”, ring “d”, stage“e”) also consists of four 4:1 Muxes namely F(c,d,2 e+1), F(c,d,2 e+2),B(c,d,2 e+1), and B(c,d,2 e+2). The 4:1 Mux F(c,d,2 e+1) has four inputsnamely Ri(c,d,2 e+1), Ri(c,d,2 e+2), Ui(c,d,2 e+2), and J(c,d,e+1), andhas one output Fo(c,d,2 e+1). The 4:1 Mux F(c,d,2 e+2) has four inputsnamely Ri(c,d,2 e+1), Ri(c,d,2 e+2), Ui(c,d,2 e+1), and K(c,d,e+1), andhas one output Fo(c,d,2 e+2).

The 4:1 Mux B(c,d,2 e+1) has four inputs namely Ui(c,d,2 e+1), Ui(c,d,2e+2), Ri(c,d,2 e+2), and L(c,d,e+1), and has one output Bo(c,d,2 e+1).The 4:1 Mux B(c,d,2 e+2) has four inputs namely Ui(c,d,2 e+1), Ui(c,d,2e+2), Ri(c,d,2 e+1) and M(c,d,e+1), and has one output Bo(c,d,2 e+2). Indifferent embodiments the inputs J(c,d,e+1), K(c,d,e+1), L(c,d,e+1), andM(c,d,e+1) are connected from any of the outputs of any other stages ofany ring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

The stage (slice “c”, ring “d”, stage “e+1”) consists of 8 inputs namelyRi(c,d,2 e+3), Ri(c,d,2 e+4), Ui(c,d,2 e+3), Ui(c,d,2 e+4), J(c,d,e+2),K(c,d,e+2), L(c,d,e+2), and M(c,d,e+2); and 4 outputs Bo(c,d,2 e+3),Bo(c,d,2 e+4), Fo(c,d,2 e+3), and Fo(c,d,2 e+4). The stage (slice “c”,ring “d”, stage “e+1”) also consists of four 4:1 Muxes namely F(c,d,2e+3), F(c,d,2 e+4), B(c,d,2 e+3), and B(c,d,2 e+4). The 4:1 Mux F(c,d,2e+3) has four inputs namely Ri(c,d,2 e+3), Ri(c,d,2 e+4), Ui(c,d,2 e+4),and J(c,d,e+2), and has one output Fo(c,d,2 e+3). The 4:1 Mux F(c,d,2e+4) has four inputs namely Ri(c,d,2 e+3), Ri(c,d,2 e+4), Ui(c,d,2 e+3),and K(c,d,e+2), and has one output Fo(c,d,2 e+4).

The 4:1 Mux B(c,d,2 e+3) has four inputs namely Ui(c,d,2 e+3), Ui(c,d,2e+4), Ri(c,d,2 e+4), and L(c,d,e+2), and has one output Bo(c,d,2 e+3).The 4:1 Mux B(c,d,2 e+4) has four inputs namely Ui(c,d,2 e+3), Ui(c,d,2e+4), Ri(c,d,2 e+3) and M(c,d,e+2), and has one output Bo(c,d,2 e+4). Indifferent embodiments the inputs J(c,d,e+2), K(c,d,e+2), L(c,d,e+2), andM(c,d,e+2) are connected from any of the outputs of any other stages ofany ring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

The output Fo(c,d,2 e+1) of the stage (slice “c”, ring “d”, stage “e”)is connected to the input Ri(c,d,2 e+3) of the stage (slice “c”, ring“d”, stage “e+1”) which is called hereinafter an internal connectionbetween two successive stages of a ring. And the output Bo(c,d,2 e+3) ofthe stage (slice “c”, ring “d”, stage “e+1”) is connected to the inputUi(c,d,2 e+1) of the stage (slice “c”, ring “d”, stage “e”), is anotherinternal connection between stage “e” and stage “e+1” of the ring (slice“c”, ring “d”).

Just the same way the two successive stages (slice “c”, ring “d”, stage“e”) and (slice ‘c”, ring “d”, stage “e+1”) have internal connectionsbetween them as described above, any two successive stages have similarinternal connections for any values of “c”, “d”, “e” of the partialmulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100C in FIG. 1Cbelonging to any block of the two dimensional grid 800 in FIG. 8, insome embodiments. For example stage (slice 1, ring 1, stage 0) and stage(slice 1, ring 1, stage 1) have similar internal connections; and stage(slice 1, ring 1, stage “m−1”) and stage (slice 1, ring 1, stage “m”)have similar internal connections.

Stage (slice 1, ring 1, stage 0) is also called hereinafter the “entrystage” or “first stage” of (slice 1, ring 1), since inlet links andoutlet links of the computational block are directly connected to stage(slice 1, ring 1, stage 0). Also stage (slice 1, ring 1, stage “m”) ishereinafter the “last stage” or “root stage” of (slice 1, ring 1).

The stage (slice 1, ring 2, stage 0) consists of 8 inputs namelyRi(1,2,1), Ri(1,2,2), Ui(1,2,1), Ui(1,2,2), J(1,2,1), K(1,2,1),L(1,2,1), and M(1,2,1); and 4 outputs Bo(1,2,1), Bo(1,2,2), Fo(1,2,1),and Fo(1,2,2). The stage (slice 1, ring “2”, stage “0”) also consists offour 4:1 Muxes namely F(1,2,1), F(1,2,2), B(1,2,1), and B(1,2,2). The4:1 Mux F(1,2,1) has four inputs namely Ri(1,2,1), Ri(1,2,2), Ui(1,2,2),and J(1,2,1), and has one output Fo(1,2,1). The 4:1 Mux F(1,2,2) hasfour inputs namely Ri(1,2,1), Ri(1,2,2), Ui(1,2,1), and K(1,2,1), andhas one output Fo(1,2,2).

The 4:1 Mux B(1,2,1) has four inputs namely Ui(1,2,1), Ui(1,2,2),Ri(1,2,2), and L(1,2,1), and has one output Bo(1,2,1). The 4:1 MuxB(1,2,2) has four inputs namely Ui(1,2,1), Ui(1,2,2), Ri(1,2,1) andM(1,2,1), and has one output Bo(1,2,2). In different embodiments theinputs J(1,2,1), K(1,2,1), L(1,2,1), and M(1,2,1) are connected from anyof the outputs of any other stages of any ring of any block of themulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (slice 1, ring 2, stage “n”) consists of 8 inputs namelyRi(1,2,2 n+1), Ri(1,2,2 n+2), Ui(1,2,2 n+1), Ui(1,2,2 n+2), J(1,2,n+1),K(1,2,n+1), L(1,2,n+1), and M(1,2,n+1); and 4 outputs Bo(1,2,2 n+1),Bo(1,2,2 n+2), Fo(1,2,2 n+1), and Fo(1,2,2 n+2). The stage (slice 1,ring 2, stage “n”) also consists of four 4:1 Muxes namely F(1,2,2 n+1),F(1,2,2 n+2), B(1,2,2 n+1), and B(1,2,2 n+2). The 4:1 Mux F(1,2,2 n+1)has four inputs namely Ri(1,2,2 n+1), Ri(1,2,2 n+2), Ui(1,2,2 n+2), andJ(1,2,n+1), and has one output Fo(1,2,2 n+1). The 4:1 Mux F(1,2,2 n+2)has four inputs namely Ri(1,2,2 n+1), Ri(1,2,2 n+2), Ui(1,2,2 n+1), andK(1,2,n+1), and has one output Fo(1,2,2 n+2).

The 4:1 Mux B(1,2,2 n+1) has four inputs namely Ui(1,2,n+1), Ui(1,2,2n+2), Ri(1,2,2 n+2), and L(1,2,n+1), and has one output Bo(1,2,2 n+1).The 4:1 Mux B(1,2,2 n+2) has four inputs namely Ui(1,2,2 n+1), Ui(1,2,2n+2), Ri(1,2,2 n+1) and M(1,2,n+1), and has one output Bo(1,2,2 n+2). Indifferent embodiments the inputs J(1,2,n+1), K(1,2,n+1), L(1,2,n+1), andM(1,2,n+1) are connected from any of the outputs of any other stages ofany ring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

Just the same way the stage (slice 1, ring 2, stage 0), there are alsostages (slice 1, ring 2, stage 1), (slice 1, ring 2, stage 2), (slice 1,ring 2, stage 3), . . . (slice 1, ring 2, stage “n−1”), (slice 1, ring2, stage “n”) in that order, where the stages from (slice 1, ring 2,stage 1), (slice 1, ring 2, stage 2), . . . , (slice 1, ring 2, stage“n−1”) are not shown in the diagram 100C.

The stage (slice 2, ring 1, stage 0) consists of 8 inputs namelyRi(2,1,1), Ri(2,1,2), Ui(2,1,1), Ui(2,1,2), J(2,1,1), K(2,1,1),L(2,1,1), and M(2,1,1); and 4 outputs Bo(2,1,1), Bo(2,1,2), Fo(2,1,1),and Fo(2,1,2). The stage (slice 2, ring “1”, stage “0”) also consists offour 4:1 Muxes namely F(2,1,1), F(2,1,2), B(2,1,1), and B(2,1,2). The4:1 Mux F(2,1,1) has four inputs namely Ri(2,1,1), Ri(2,1,2), Ui(2,1,2),and J(2,1,1), and has one output Fo(2,1,1). The 4:1 Mux F(2,1,2) hasfour inputs namely Ri(2,1,1), Ri(2,1,2), Ui(2,1,1), and K(2,1,1), andhas one output Fo(2,1,2).

The 4:1 Mux B(2,1,1) has four inputs namely Ui(2,1,1), Ui(2,1,2),Ri(2,1,2), and L(2,1,1), and has one output Bo(2,1,1). The 4:1 MuxB(2,1,2) has four inputs namely Ui(2,1,1), Ui(2,1,2), Ri(2,1,1) andM(2,1,1), and has one output Bo(2,1,2). In different embodiments theinputs J(2,1,1), K(2,1,1), L(2,1,1), and M(2,1,1) are connected from anyof the outputs of any other stages of any ring of any block of themulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (slice 2, ring 1, stage “x”) consists of 8 inputs namelyRi(2,1,2 x+1), Ri(2,1,2 x+2), Ui(2,1,2 x+1), Ui(2,1,2 x+2), J(2,1,x+1),K(2,1,x+1), L(2,1,x+1), and M(2,1,x+1); and 4 outputs Bo(2,1,2 x+1),Bo(2,1,2 x+2), Fo(2,1,2 x+1), and Fo(2,1,2 x+2). The stage (slice 2,ring 1, stage “x”) also consists of four 4:1 Muxes namely F(2,1,2 x+1),F(2,1,2 x+2), B(2,1,2 x+1), and B(2,1,2 x+2). The 4:1 Mux F(2,1,2 x+1)has four inputs namely Ri(2,1,2 x+1), Ri(2,1,2 x+2), Ui(2,1,2 x+2), andJ(2,1,x+1), and has one output Fo(2,1,2 x+1). The 4:1 Mux F(2,1,2 x+2)has four inputs namely Ri(2,1,2 x+1), Ri(2,1,2 x+2), Ui(2,1,2 x+1), andK(2,1,x+1), and has one output Fo(2,1,2 x+2).

The 4:1 Mux B(2,1,2 x+1) has four inputs namely Ui(2,1,2 x+1), Ui(2,1,2x+2), Ri(2,1,2 x+2), and L(2,1,x+1), and has one output Bo(2,1,2 x+1).The 4:1 Mux B(2,1,2 x+2) has four inputs namely Ui(2,1,2 x+1), Ui(2,1,2x+2), Ri(2,1,2 x+1) and M(2,1,x+1), and has one output Bo(2,1,2 x+2). Indifferent embodiments the inputs J(2,1,x+1), K(2,1,x+1), L(2,1,x+1), andM(2,1,x+1) are connected from any of the outputs of any other stages ofany ring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

Just the same way the stage (slice 2, ring 1, stage 0), there are alsostages (slice 2, ring 1, stage 1), (slice 2, ring 1, stage 2), (slice 2,ring 1, stage 3), . . . (slice 2, ring 1, stage “m−1”), (slice 2, ring1, stage “x”) in that order, where the stages from (slice 2, ring 1,stage 1), (slice 2, ring 1, stage 2), . . . , (slice 2, ring 1, stage“x−1”) are not shown in the diagram 100C.

The stage (slice 2, ring 2, stage 0) consists of 8 inputs namelyRi(2,2,1), Ri(2,2,2), Ui(2,2,1), Ui(2,2,2), J(2,2,1), K(2,2,1),L(2,2,1), and M(2,2,1); and 4 outputs Bo(2,2,1), Bo(2,2,2), Fo(2,2,1),and Fo(2,2,2). The stage (slice 2, ring “2”, stage “0”) also consists offour 4:1 Muxes namely F(2,2,1), F(2,2,2), B(2,2,1), and B(2,2,2). The4:1 Mux F(2,2,1) has four inputs namely Ri(2,2,1), Ri(2,2,2), Ui(2,2,2),and J(2,2,1), and has one output Fo(2,2,1). The 4:1 Mux F(2,2,2) hasfour inputs namely Ri(2,2,1), Ri(2,2,2), Ui(2,2,1), and K(2,2,1), andhas one output Fo(2,2,2).

The 4:1 Mux B(2,2,1) has four inputs namely Ui(2,2,1), Ui(2,2,2),Ri(2,2,2), and L(2,2,1), and has one output Bo(2,2,1). The 4:1 MuxB(2,2,2) has four inputs namely Ui(2,2,1), Ui(2,2,2), Ri(2,2,1) andM(2,2,1), and has one output Bo(2,2,2). In different embodiments theinputs J(2,2,1), K(2,2,1), L(2,2,1), and M(2,2,1) are connected from anyof the outputs of any other stages of any ring of any block of themulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (slice 2, ring 2, stage “x”) consists of 8 inputs namelyRi(2,2,2 x+1), Ri(2,2,2 x+2), Ui(2,2,2 x+1), Ui(2,2,2 x+2), J(2,2,x+1),K(2,2,x+1), L(2,2,x+1), and M(2,2,x+1); and 4 outputs Bo(2,2,2 x+1),Bo(2,2,2 x+2), Fo(2,2,2 x+1), and Fo(2,2,2 x+2). The stage (slice 2,ring 2, stage “y”) also consists of four 4:1 Muxes namely F(2,2,2 y+1),F(2,2,2 y+2), B(2,2,2 y+1), and B(2,2,2 y+2). The 4:1 Mux F(2,2,2 y+1)has four inputs namely Ri(2,2,2 y+1), Ri(2,2,2 y+2), Ui(2,2,2 y+2), andJ(2,2,y+1), and has one output Fo(2,2,2 y+1). The 4:1 Mux F(2,2,2 y+2)has four inputs namely Ri(2,2,2 y+1), Ri(2,2,2 y+2), Ui(2,2,2 y+1), andK(2,2,y+1), and has one output Fo(2,2,2 y+2).

The 4:1 Mux B(2,2,2 y+1) has four inputs namely Ui(2,2,2 y+1), Ui(2,2,2y+2), Ri(2,2,2 y+2), and L(2,2,y+1), and has one output Bo(2,2,2 y+1).The 4:1 Mux B(2,2,2 y+2) has four inputs namely Ui(2,2,2 y+1), Ui(2,2,2y+2), Ri(2,2,2 y+1) and M(2,2,y+1), and has one output Bo(2,2,2 y+2). Indifferent embodiments the inputs J(2,2,y+1), K(2,2,y+1), L(2,2,y+1), andM(2,2,y+1) are connected from any of the outputs of any other stages ofany ring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

Just the same way the stage (slice 2, ring 2, stage 0), there are alsostages (slice 2, ring 2, stage 1), (slice 2, ring 2, stage 2), (slice 2,ring 2, stage 3), . . . (slice 2, ring 2, stage “y−1”), (slice 2, ring2, stage “y”) in that order, where the stages from (slice 2, ring 2,stage 1), (slice 2, ring 2, stage 2), . . . , (slice 2, ring 2, stage“y−1”) are not shown in the diagram 100C.

As illustrated in diagram 100C5 in FIG. 1C5, the similar internalconnections between two successive stages of any ring of any slice ofpartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100C inFIG. 1C, in some embodiments are provided for all the slices c=1, 2; forall the rings in each of the slices d=1, 2; and for all the stagesnamely when c=1, d=1, e=[1,m]; when c=1, d=2, e=[1,n]; when c=2, d=1,e=[1,x]; and when c=2, d=2; e=[1,y].

Each stage of any ring of the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100B consists of 2*d=4 outputs. Even though eachstage has four 4:1 muxes, in other embodiments any of these stages canbe one of the four by four switch diagrams namely 200A of FIG. 2A, 200Bof FIG. 2B, 200C of FIG. 2C, and one of the eight by four switchdiagrams namely 200E of FIG. 2E, 200F of FIG. 2F.

In general, any ring of the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) illustrated in 100C also may have inputs and outputsconnected from computational block from either only from left-hand sideas in the partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s)100A; or only from right-hand side; or from both left-hand andright-hand sides as in the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100B.

Applicant now notes a few aspects of the diagram 100C in FIG. 1C anexemplary partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s)corresponding to one computational block, with each computational blockhaving 16 inlet links and 4 outlet links as follows: (Also these aspectsare helpful in more optimization of the partial multi-stage hierarchicalnetwork V_(Comb)(N₁,N₂,d,s) as well as faster scheduling of theconnections between outlet links of the computational blocks and theinlet links of the computational blocks.)

1) The partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100Cin FIG. 1C is divided into two slices namely slice 1 and slice 2. Theoutlet links of the computational block namely O1 and O2 are connectedto only one slice i.e. slice 1. In other words outlet links O1 and O2are absolutely not connected to slice 2. Similarly the outlet links ofthe computational block namely O3 and O4 are connected to only one slicei.e. slice 2. In other words outlet links O3 and O4 are absolutely notconnected to slice 1. 2) The second aspect is all the hop wires andmulti-drop hop wires originating from slice 1 from any block will beterminating only in the slice 1 of any other block. Similarly all thehop wires and multi-drop hop wires originating from slice 2 from anyblock will be terminating only in the slice 2 of any other block. 3) Thethird aspect is the mux whose output is directly connected to each inletlink of the computational block must have at least one input connectedfrom each slice of the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100C. That is for example since the 4:1 muxB(1,1,1), belonging to slice 1, and having its output Bo(1,1,1) directlyconnected to inlet link I1 must have at least one of its inputsconnecting from an output of a mux of a stage of a ring of slice 2 aswell. This property must be satisfied for all the inlet links of thepartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100C.

Referring to diagram 100C1 in FIG. 1C1, diagram 100C2 in FIG. 1C2,diagram 100C3 in FIG. 1C3, and diagram 100C4 in FIG. 1C4 illustrate thedetails of the foregoing third aspect of the partial multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) 100C of FIG. 1C. Applicantnotes that diagram 100C1 in FIG. 1C1, diagram 100C2 in FIG. 1C2, diagram100C3 in FIG. 1C3, and diagram 100C4 in FIG. 1C4 are all actually partof the partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100Cof FIG. 1C and these separate diagrams are necessary only to avoid theclutter in the diagram 100C of FIG. 1C.

The connections illustrated between different slices in diagram 100C1 inFIG. 1C1, diagram 100C2 in FIG. 1C2, diagram 100C3 in FIG. 1C3, anddiagram 100C4 in FIG. 1C4 are the only connections between differentslices, in some exemplary embodiments. In general the connectionsbetween different slices are given only at the terminating muxes i.e.whose outputs are directly connected to one of the inlet links of thecomputational block.

Referring to diagram 100C1 in FIG. 1C1 illustrate the connectionsbetween the stage (slice 1, ring 1, stage 0) and between the stage(slice 2, ring 1, stage 0). The same connection that is given to theinput Ui(1,1,1) is also connected to the input L(2,1,1). The sameconnection that is given to the input Ui(1,1,2) is also connected to theinput M(2,1,1). Similarly the same connection that is given to the inputUi(2,1,1) is also connected to the input L(1,1,1). The same connectionthat is given to the input Ui(2,1,2) is also connected to the inputM(1,1,1).

Therefore inlet link I1 can be essentially connected through the 4:1 muxB(1,1,1) with three of its inputs connecting from slice 1 namelyUi(1,1,1), Ui(1,1,2), Ri(1,1,2) and one input L(1,1,1) connecting fromslice 2. The inlet link I2 can be essentially connected through the 4:1mux B(1,1,2) with three of its inputs connecting from slice 1 namelyUi(1,1,1), Ui(1,1,2), Ri(1,1,1) and one input M(1,1,1) connecting fromslice 2. The inlet link I9 can be essentially connected through the 4:1mux B(1,2,1) with three of its inputs connecting from slice 2 namelyUi(2,1,1), Ui(2,1,2), Ri(2,1,2) and one input L(2,1,1) connecting fromslice 1. The inlet link I10 can be essentially connected through the 4:1mux B(2,1,2) with three of its inputs connecting from slice 2 namelyUi(2,1,1), Ui(2,1,2), Ri(2,1,1) and one input M(2,1,1) connecting fromslice 1. Hence all the inlet links I1, I2, I9 and I10 are allindependently reachable from both slice 1 and slice 2.

Referring to diagram 100C2 in FIG. 1C2 illustrate the connectionsbetween the stage (slice 1, ring 2, stage 0) and between the stage(slice 2, ring 2, stage 0). The same connection that is given to theinput Ui(1,2,1) is also connected to the input M(2,2,1). The sameconnection that is given to the input Ui(1,2,2) is also connected to theinput L(2,2,1). Similarly the same connection that is given to the inputUi(2,2,1) is also connected to the input M(1,2,1). The same connectionthat is given to the input Ui(2,2,2) is also connected to the inputL(1,2,1).

Therefore inlet link I3 can be essentially connected through the 4:1 muxB(1,2,1) with three of its inputs connecting from slice 1 namelyUi(1,2,1), Ui(1,2,2), Ri(1,2,2) and one input M(2,2,1) connecting fromslice 2. The inlet link I4 can be essentially connected through the 4:1mux B(1,2,2) with three of its inputs connecting from slice 1 namelyUi(1,2,1), Ui(1,2,2), Ri(1,2,1) and one input M(1,2,1) connecting fromslice 2. The inlet link I11 can be essentially connected through the 4:1mux B(2,2,1) with three of its inputs connecting from slice 2 namelyUi(2,2,1), Ui(2,2,2), Ri(2,2,2) and one input L(2,2,1) connecting fromslice 1. The inlet link I12 can be essentially connected through the 4:1mux B(2,2,2) with three of its inputs connecting from slice 2 namelyUi(2,2,1), Ui(2,2,2), Ri(2,2,1) and one input M(2,2,1) connecting fromslice 1. Hence all the inlet links I3, I4, I11 and I12 are allindependently reachable from both slice 1 and slice 2.

Referring to diagram 100C3 in FIG. 1C3 illustrate the connectionsbetween the stage (slice 1, ring 1, stage “m”) and between the stage(slice 2, ring 2, stage “y”). The same connection that is given to theinput Ri(1,1,2 m+1) is also connected to the input J(2,2,y+1). The sameconnection that is given to the input Ri(1,1,2 m+2) is also connected tothe input K(2,2,y+1). Similarly the same connection that is given to theinput Ri(2,2,2 y+1) is also connected to the input J(1,1,m+1). The sameconnection that is given to the input Ri(2,2,2 y+2) is also connected tothe input K(1,1,m+1).

Therefore inlet link I5 can be essentially connected through the 4:1 muxF(1,1,2 m+1) with three of its inputs connecting from slice 1 namelyRi(1,1,2 m+1), Ri(1,1,2 m+2), Ui(1,1,2 m+2) and one input J(1,1,m+1)connecting from slice 2. The inlet link I6 can be essentially connectedthrough the 4:1 mux F(1,1,2 m+2) with three of its inputs connectingfrom slice 1 namely Ri(1,1,2 m+1), Ri(1,1,2 m+2), Ui(1,1,2 m+1) and oneinput K(1,1,m+1) connecting from slice 2. The inlet link I15 can beessentially connected through the 4:1 mux F(2,2,2 y+1) with three of itsinputs connecting from slice 2 namely Ri(2,2,2 y+1), Ri(2,2,2 y+2),Ui(2,2,2 y+2) and one input J(2,2,y+1) connecting from slice 1. Theinlet link I16 can be essentially connected through the 4:1 mux F(2,2,2y+2) with three of its inputs connecting from slice 2 namely Ri(2,2,2y+1), Ri(2,2,2 y+2), Ui(2,2,2 y+1) and one input K(2,2,y+1) connectingfrom slice 1. Hence all the inlet links I5, I6, I15 and I16 are allindependently reachable from both slice 1 and slice 2.

Referring to diagram 100C4 in FIG. 1C4 illustrate the connectionsbetween the stage (slice 1, ring 2, stage “n”) and between the stage(slice 2, ring 1, stage “x”). The same connection that is given to theinput Ri(1,2,2 n+1) is also connected to the input K(2,1,x+1). The sameconnection that is given to the input Ri(1,2,2 n+2) is also connected tothe input J(2,1,x+1). Similarly the same connection that is given to theinput Ri(2,1,2 x+1) is also connected to the input K(1,2,n+1). The sameconnection that is given to the input Ri(2,1,2 x+2) is also connected tothe input J(1,2,n+1).

Therefore inlet link I7 can be essentially connected through the 4:1 muxF(1,2,2 n+1) with three of its inputs connecting from slice 1 namelyRi(1,2,2 n+1), Ri(1,2,2 n+2), Ui(1,2,2 n+2) and one input J(1,2,n+1)connecting from slice 2. The inlet link I8 can be essentially connectedthrough the 4:1 mux F(1,2,2 n+2) with three of its inputs connectingfrom slice 1 namely Ri(1,2,2 n+1), Ri(1,2,2 n+2), Ui(1,2,2 n+1) and oneinput K(1,2,n+1) connecting from slice 2. The inlet link I13 can beessentially connected through the 4:1 mux F(2,1,2 x+1) with three of itsinputs connecting from slice 2 namely Ri(2,1,2 x+1), Ri(2,1,2 x+2),Ui(2,1,2 x+2) and one input J(2,1,x+1) connecting from slice 1. Theinlet link I14 can be essentially connected through the 4:1 mux F(2,1,2x+2) with three of its inputs connecting from slice 2 namely Ri(2,1,2x+1), Ri(2,1,2 x+2), Ui(2,1,2 x+1) and one input K(2,1,x+1) connectingfrom slice 1. Hence all the inlet links I7, I8, I13 and I14 are allindependently reachable from both slice 1 and slice 2.

The connections illustrated between different slices, in severalembodiments, in diagram 100C1 in FIG. 1C1, diagram 100C2 in FIG. 1C2,diagram 100C3 in FIG. 1C3, and diagram 100C4 in FIG. 1C4 are the onlyconnections between different slices. And also the terminating muxesi.e. whose outputs are directly connected to one of the inlet links ofthe computational block have three inputs coming from one slice and oneinput coming from another slice. In other embodiments it is alsopossible so that the terminating muxes i.e. whose outputs are directlyconnected to one of the inlet links of the computational block have twoinputs coming from one slice and two inputs coming from another slice.

Also in general the number of slices in the partial multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) 100C of FIG. 1C may be morethan or equal to two. In such a case terminating muxes i.e. whoseoutputs are directly connected to one of the inlet links of thecomputational block will have at least one input coming from each slice.And the outlet links of the computational block will be divided andconnected to each slice; however each outlet link of the computationalblock will be connected to only one slice. Also in general the hop wiresand multi-drop hop wires are connected to only between the correspondingslices of different blocks, in some embodiments some of the hop wiresand multi-drop hop wires may be connected between different slices ofdifferent blocks even if it is done partially.

FIG. 2A illustrates a stage (ring “k”, stage “m”) 200A consists of 4inputs namely Fi(k,2 m+1), Fi(k,2 m+2), Ui(k,2 m+1), and Ui(k,2 m+2);and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), and Fo(k,2 m+2).The stage (ring “k”, stage “m”) also consists of six 2:1 Muxes namelyF(k,2 m+1), F(k,2 m+2), U(k,2 m+1), U(k,2 m+2), B(k,2 m+1), and B(k,2m+2). The 2:1 Mux F(k,2 m+1) has two inputs namely Fi(k,2 m+1) andFi(k,2 m+2) and has one output Fo(k,2 m+1). The 2:1 Mux F(k,2 m+2) hastwo inputs namely Fi(k,2 m+1) and Fi(k,2 m+2) and has one output Fo(k,2m+2).

The 2:1 Mux U(k,2 m+1) has two inputs namely Ui(k,2 m+1) and Fo(k,2 m+1)and has one output Uo(k,2 m+1). The 2:1 Mux U(k,2 m+2) has two inputsnamely Ui(k,2 m+2) and Fo(k,2 m+2) and has one output Uo(k,2 m+2). The2:1 Mux B(k,2 m+1) has two inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) andhas one output Bo(k,2 m+1). The 2:1 Mux B(k,2 m+2) has two inputs namelyUo(k,2 m+1) and Uo(k,2 m+2) and has one output Bo(k,2 m+2).

FIG. 2B illustrates a stage (ring “k”, stage “m”) 200B consists of 4inputs namely Ri(k,2 m+1), Ri(k,2 m+2), Ui(k,2 m+1), and Ui(k,2 m+2);and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), and Fo(k,2 m+2).The stage (ring “k”, stage “m”) also consists of eight 2:1 Muxes namelyR(k,2 m+1), R(k,2 m+2), F(k,2 m+1), F(k,2 m+2), U(k,2 m+1), U(k,2 m+2),B(k,2 m+1), and B(k,2 m+2). The 2:1 Mux R(k,2 m+1) has two inputs namelyRi(k,2 m+1) and Bo(k,2 m+1) and has one output Ro(k,2 m+1). The 2:1 MuxR(k,2 m+2) has two inputs namely Ri(k,2 m+2) and Bo(k,2 m+2) and has oneoutput Ro(k,2 m+2). The 2:1 Mux F(k,2 m+1) has two inputs namely Ro(k,2m+1) and Ro(k,2 m+2) and has one output Fo(k,2 m+1). The 2:1 Mux F(k,2m+2) has two inputs namely Ro(k,2 m+1) and Ro(k,2 m+2) and has oneoutput Fo(k,2 m+2).

The 2:1 Mux U(k,2 m+1) has two inputs namely Ui(k,2 m+1) and Fo(k,2 m+1)and has one output Uo(k,2 m+1). The 2:1 Mux U(k,2 m+2) has two inputsnamely Ui(k,2 m+2) and Fo(k,2 m+2) and has one output Uo(k,2 m+2). The2:1 Mux B(k,2 m+1) has two inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) andhas one output Bo(k,2 m+1). The 2:1 Mux B(k,2 m+2) has two inputs namelyUo(k,2 m+1) and Uo(k,2 m+2) and has one output Bo(k,2 m+2).

FIG. 2C illustrates a stage (ring “k”, stage “m”) 200C consists of 4inputs namely Fi(k,2 m+1), Fi(k,2 m+2), Bi(k,2 m+1), and Bi(k,2 m+2);and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), and Fo(k,2 m+2).The stage (ring “k”, stage “m”) also consists of four 2:1 Muxes namelyF(k,2 m+1), F(k,2 m+2), B(k,2 m+1), and B(k,2 m+2). The 2:1 Mux F(k,2m+1) has two inputs namely Fi(k,2 m+1) and Fi(k,2 m+2) and has oneoutput Fo(k,2 m+1). The 2:1 Mux F(k,2 m+2) has two inputs namely Fi(k,2m+1) and Fi(k,2 m+2) and has one output Fo(k,2 m+2).

The 2:1 Mux B(k,2 m+1) has two inputs namely Bi(k,2 m+1) and Bi(k,2 m+2)and has one output Bo(k,2 m+1). The 2:1 Mux B(k,2 m+2) has two inputsnamely Bi(k,2 m+1) and Bi(k,2 m+2) and has one output Bo(k,2 m+2).

However the stage “m+1” of ring “k” with “m+1” stages of the partialmulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s), in anotherembodiment, may have 2 inputs and 2 outputs as shown in diagram 200D inFIG. 2D. FIG. 2D illustrates a stage (ring “k”, stage “m”) 200D consistsof 2 inputs namely Fi(k,2 m+1) and Fi(k,2 m+2); and 2 outputs Fo(k,2m+1) and Fo(k,2 m+2). The stage (ring “k”, stage “m”) also consists oftwo 2:1 Muxes namely F(k,2 m+1), F(k,2 m+2). The 2:1 Mux F(k,2 m+1) hastwo inputs namely Fi(k,2 m+1) and Fi(k,2 m+2) and has one output Fo(k,2m+1). The 2:1 Mux F(k,2 m+2) has two inputs namely Fi(k,2 m+1) andFi(k,2 m+2) and has one output Fo(k,2 m+2). A stage with d=2 inputs andd=2 outputs is typically the “last stage” or “root stage” of ring.

The stage “m” of ring “k” with “m” stages of the partial multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s), in another embodiment, mayhave 8 inputs and 4 outputs as shown in diagram 200E in FIG. 2E. FIG. 2Eillustrates a stage (ring “k”, stage “m”) 200E consists of 8 inputsnamely Ri(k,2 m+1), Ri(k,2 m+2), Ui(k,2 m+1), Ui(k,2 m+2), J, K, L, andM; and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), and Fo(k,2 m+2).The stage (ring “k”, stage “m”) also consists of eight 2:1 Muxes namelyR(k,2 m+1), R(k,2 m+2), F(k,2 m+1), F(k,2 m+2), U(k,2 m+1), U(k,2 m+2),B(k,2 m+1), and B(k,2 m+2). The 2:1 Mux R(k,2 m+1) has two inputs namelyRi(k,2 m+1) and J, and has one output Ro(k,2 m+1). The 2:1 Mux R(k,2m+2) has two inputs namely Ri(k,2 m+2) and K, and has one output Ro(k,2m+2). The 2:1 Mux F(k,2 m+1) has two inputs namely Ro(k,2 m+1) andUo(k,2 m+2), and has one output Fo(k,2 m+1). The 2:1 Mux F(k,2 m+2) hastwo inputs namely Ro(k,2 m+2) and Uo(k,2 m+1), and has one output Fo(k,2m+2).

The 2:1 Mux U(k,2 m+1) has two inputs namely Ui(k,2 m+1) and L, and hasone output Uo(k,2 m+1). The 2:1 Mux U(k,2 m+2) has two inputs namelyUi(k,2 m+2) and M, and has one output Uo(k,2 m+2). The 2:1 Mux B(k,2m+1) has two inputs namely Uo(k,2 m+1) and Ro(k,2 m+2), and has oneoutput Bo(k,2 m+1). The 2:1 Mux B(k,2 m+2) has two inputs namely Uo(k,2m+2) and Ro(k,2 m+1), and has one output Bo(k,2 m+2). In differentembodiments the inputs J, K, L, and M are connected from any of theoutputs of any other stages of any ring of any block of the multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s).

The stage “m” of ring “k” with “m” stages of the partial multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s), in another embodiment, mayhave 8 inputs and 4 outputs as shown in diagram 200F in FIG. 2F. FIG. 2Fillustrates a stage (ring “k”, stage “m”) 200F consists of 8 inputsnamely Ri(k,2 m+1), Ri(k,2 m+2), Ui(k,2 m+1), Ui(k,2 m+2), J, K, L, andM; and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), and Fo(k,2 m+2).The stage (ring “k”, stage “m”) also consists of four 4:1 Muxes namelyF(k,2 m+1), F(k,2 m+2), B(k,2 m+1), and B(k,2 m+2). The 4:1 Mux F(k,2m+1) has four inputs namely Ri(k,2 m+1), Ri(k,2 m+2), Ui(k,2 m+2), andJ, and has one output Fo(k,2 m+1). The 4:1 Mux F(k,2 m+2) has fourinputs namely Ri(k,2 m+1), Ri(k,2 m+2), Ui(k,2 m+1), and K, and has oneoutput Fo(k,2 m+2).

The 4:1 Mux B(k,2 m+1) has four inputs namely Ui(k,2 m+1), Ui(k,2 m+2),Ri(k,2 m+2), and L, and has one output Bo(k,2 m+1). The 4:1 Mux B(k,2m+2) has four inputs namely Ui(k,2 m+1), Ui(k,2 m+2), Ri(k,2 m+1) and M,and has one output Bo(k,2 m+2). In different embodiments the inputs J,K, L, and M are connected from any of the outputs of any other stages ofany ring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

The number of stages in a ring of any block may not be equal to thenumber of stages in any other ring of the same of block or any ring ofany other block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s). For example the number of stages in ring 1 of thepartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100A or ofthe partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100B orof the partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100Cis denoted by “m” and the number of stages in ring 2 of the partialmulti-stage hierarchical network is denoted by “n”, and so “m” may ormay not be equal to “n”. Similarly the number of stages in ring 2corresponding to block (3,3) of 2D-grid 800 may not be equal to thenumber of stages in ring 2 corresponding to block (6,9) of 2D-grid 800.Similarly in the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) 100C the number of stages in (slice 1, ring 2)corresponding to block (3,3) of 2D-grid 800 may not be equal to thenumber of stages in (slice 1, ring 2) corresponding to block (6,9) of2D-grid 800.

Even though the number of inlet links to the computational block is fourand the number of outlet links to the computational block is two in thepartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100A, thenumber of inlet links to the computational block is eight and the numberof outlet links to the computational block is four in the partialmulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100B, and thenumber of inlet links to the computational block is sixteen and thenumber of outlet links to the computational block is four in the partialmulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100C, in otherembodiments the number of inlet links to the computational block may beany arbitrary number and the number of outlet links to the computationalblock may also be another arbitrary number. However the total number ofrings of all the slices corresponding to the partial multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) of a block is generally equalto the number of inlet links to the computational block divided by d=2if the inputs and outputs are connected either only from left-hand sideor only from right-hand side, if the number of inlet links to thecomputational block is greater than or equal to the number of outletlinks to the computational block. In such a case one or more of theoutlet links to the computational block are connected to more than oneinlet links of the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) corresponding to a block. Similarly the total numberof rings of all the slices corresponding to the partial multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) of a block is generally equalto the number of inlet links to the computational block divided by 2*d=4if the inputs and outputs are connected from both left-hand side andfrom right-hand side, if the number of inlet links to the computationalblock is greater than or equal to the number of outlet links to thecomputational block.

Otherwise the total number of rings of all the slices corresponding tothe partial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) of ablock is generally equal to the number of outlet links to thecomputational block divided by d=2 if the inputs and outputs areconnected either only from left-hand side or only from right-hand side,if the number of outlet links to the computational block is greater thanthe number of inlet links to the computational block. In such a case oneor more of the outlet links of the partial multi-stage hierarchicalnetwork V_(Comb)(N₁,N₂,d,s) corresponding to a block are connected tomore than one inlet link of the computational block. Similarly the totalnumber of rings of all the slices corresponding to the partialmulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s) of a block isgenerally equal to the number of outlet links to the computational blockdivided by 2*d=4 if the inputs and outputs are connected from bothleft-hand side and from right-hand side, if the number of outlet linksto the computational block is greater than or equal to the number ofinlet links to the computational block.

In another embodiment, the number of inlet links to the computationalblock corresponding to a block of 2D-grid of blocks may or may not beequal to the number of inlet links to the computational blockcorresponding to another block. Similarly the number of outlet links tothe computational block corresponding to a block of 2D-grid of blocksmay or may not be equal to the number of outlet links to thecomputational block corresponding to another block. Hence the totalnumber of rings of the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) corresponding to a block of 2D-grid of blocks may ormay not be equal to the partial multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s) corresponding to another block. For example thetotal number of rings corresponding to block (4,5) of 2D-grid 800 may betwo and the total number of rings in block (5,4) of 2D-grid 800 may bethree.

A multi-stage hierarchical network can be represented with the notationV_(Comb)(N₁,N₂,d,s), where N₁ represents the total number of inlet linksof the complete multi-stage hierarchical network and N₂ represents thetotal number of outlet links of the complete multi-stage hierarchicalnetwork, d represents the number of inlet links of any ring in any blockof the complete multi-stage hierarchical network either from onlyleft-hand side or only right-hand side, or equivalently the number ofoutlet links of any ring in any block of the complete multi-stagehierarchical network either from only left-hand side or only right-handside, and when the inputs and outputs are connected from left-hand side,s is the ratio of number of outgoing links from each stage 0 of any ringin any block to the number of inlet links of any ring in any block ofthe complete multi-stage hierarchical network (for example the completemulti-stage hierarchical network corresponding to V_(Comb)(N₁,N₂,d,s)100A in FIG. 1A, N₁=200, N=400, d=2, s=1). Also a multi-stagehierarchical network where N₁=N₂=N is represented as V_(Comb)(N,d,s).

The diagram 300A of FIG. 3A, 300B of FIG. 3B, 300C of FIG. 3C, 300D ofFIG. 3D, and 300E of FIG. 3E are different embodiments of all theconnections between two arbitrary successive stages in two differentrings of the same block or two different rings of different blocks of2D-grid 800. Referring to diagram 300A in FIG. 3A illustrates all theconnections between two arbitrary successive stages of a ring namely thestages (ring “x”, stage “p”) and (ring “x”, stage “p+1”) and two otherarbitrary successive stages of any other ring namely the stages (ring“y”, stage “q”) and (ring “y”, stage “q+1”), of the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 4 inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), and Ui(x,2 p+2); and 4 outputs Bo(x,2 p+1),Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring “x”, stage“p’) also consists of eight 2:1 Muxes namely R(x,2 p+1), R(x,2 p+2),F(x,2 p+1), F(x,2 p+2), U(x,2 p+1), U(x,2 p+2), B(x,2 p+1), and B(x,2p+2). The 2:1 Mux R(x,2 p+1) has two inputs namely Ri(x,2 p+1) andBo(x,2 p+1) and has one output Ro(x,2 p+1). The 2:1 Mux R(x,2 p+2) hastwo inputs namely Ri(x,2 p+2) and Bo(x,2 p+2) and has one output Ro(x,2p+2). The 2:1 Mux F(x,2 p+1) has two inputs namely Ro(x,2 p+1) andRo(x,2 p+2) and has one output Fo(x,2 p+1). The 2:1 Mux F(x,2 p+2) hastwo inputs namely Ro(x,2 p+1) and Ro(x,2 p+2) and has one output Fo(x,2p+2).

The 2:1 Mux U(x,2 p+1) has two inputs namely Ui(x,2 p+1) and Fo(x,2 p+1)and has one output Uo(x,2 p+1). The 2:1 Mux U(x,2 p+2) has two inputsnamely Ui(x,2 p+2) and Fo(x,2 p+2) and has one output Uo(x,2 p+2). The2:1 Mux B(x,2 p+1) has two inputs namely Uo(x,2 p+1) and Uo(x,2 p+2) andhas one output Bo(x,2 p+1). The 2:1 Mux B(x,2 p+2) has two inputs namelyUo(x,2 p+1) and Uo(x,2 p+2) and has one output Bo(x,2 p+2).

The stage (ring “x”, stage “p+1”) consists of 4 inputs namely Ri(x,2p+3), Ri(x,2 p+4), Ui(x,2 p+3), and Ui(x,2 p+4); and 4 outputs Bo(x,2p+3), Bo(x,2 p+4), Fo(x,2 p+3), and Fo(x,2 p+4). The stage (ring “x”,stage “p+1”) also consists of eight 2:1 Muxes namely R(x,2 p+3), R(x,2p+4), F(x,2 p+3), F(x,2 p+4), U(x,2 p+3), U(x,2 p+4), B(x,2 p+3), andB(x,2 p+4). The 2:1 Mux R(x,2 p+3) has two inputs namely Ri(x,2 p+3) andBo(x,2 p+3) and has one output Ro(x,2 p+3). The 2:1 Mux R(x,2 p+4) hastwo inputs namely Ri(x,2 p+4) and Bo(x,2 p+4) and has one output Ro(x,2p+4). The 2:1 Mux F(x,2 p+3) has two inputs namely Ro(x,2 p+3) andRo(x,2 p+4) and has one output Fo(x,2 p+3). The 2:1 Mux F(x,2 p+4) hastwo inputs namely Ro(x,2 p+3) and Ro(x,2 p+4) and has one output Fo(x,2p+4).

The 2:1 Mux U(x,2 p+3) has two inputs namely Ui(x,2 p+3) and Fo(x,2 p+3)and has one output Uo(x,2 p+3). The 2:1 Mux U(x,2 p+4) has two inputsnamely Ui(x,2 p+4) and Fo(x,2 p+4) and has one output Uo(x,2 p+4). The2:1 Mux B(x,2 p+3) has two inputs namely Uo(x,2 p+3) and Uo(x,2 p+4) andhas one output Bo(x,2 p+3). The 2:1 Mux B(x,2 p+4) has two inputs namelyUo(x,2 p+3) and Uo(x,2 p+4) and has one output Bo(x,2 p+4).

The output Fo(x,2 p+1) of the stage (ring “x”, stage “p”) is connectedto the input Ri(x,2 p+3) of the stage (ring “x”, stage “p+1”). And theoutput Bo(x,2 p+3) of the stage (ring “x”, stage “p+1”) is connected tothe input Ui(x,2 p+1) of the stage (ring “x”, stage “p”).

The stage (ring “y”, stage “q”) consists of 4 inputs namely Ri(y,2 q+1),Ri(y,2 q+2), Ui(y,2 q+1), and Ui(y,2 q+2); and 4 outputs Bo(y,2 q+1),Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring “y”, stage“q”) also consists of eight 2:1 Muxes namely R(y,2 q+1), R(y,2 q+2),F(y,2 q+1), F(y,2 q+2), U(y,2 q+1), U(y,2 q+2), B(y,2 q+1), and B(y,2q+2). The 2:1 Mux R(y,2 q+1) has two inputs namely Ri(y,2 q+1) andBo(y,2 q+1) and has one output Ro(y,2 q+1). The 2:1 Mux R(y,2 q+2) hastwo inputs namely Ri(y,2 q+2) and Bo(y,2 q+2) and has one output Ro(y,2q+2). The 2:1 Mux F(y,2 q+1) has two inputs namely Ro(y,2 q+1) andRo(y,2 q+2) and has one output Fo(y,2 q+1). The 2:1 Mux F(y,2 q+2) hastwo inputs namely Ro(y,2 q+1) and Ro(y,2 q+2) and has one output Fo(y,2q+2).

The 2:1 Mux U(y,2 q+1) has two inputs namely Ui(y,2 q+1) and Fo(y,2 q+1)and has one output Uo(y,2 q+1). The 2:1 Mux U(y,2 q+2) has two inputsnamely Ui(y,2 q+2) and Fo(y,2 q+2) and has one output Uo(y,2 q+2). The2:1 Mux B(y,2 q+1) has two inputs namely Uo(y,2 q+1) and Uo(y,2 q+2) andhas one output Bo(y,2 q+1). The 2:1 Mux B(y,2 q+2) has two inputs namelyUo(y,2 q+1) and Uo(y,2 q+2) and has one output Bo(y,2 q+2).

The stage (ring “y”, stage “q+1”) consists of 4 inputs namely Ri(y,2q+3), Ri(y,2 q+4), Ui(y,2 q+3), and Ui(y,2 q+4); and 4 outputs Bo(y,2q+3), Bo(y,2 q+4), Fo(y,2 q+3), and Fo(y,2 q+4). The stage (ring “y”,stage “q+1”) also consists of eight 2:1 Muxes namely R(y,2 q+3), R(y,2q+4), F(y,2 q+3), F(y,2 q+4), U(y,2 q+3), U(y,2 q+4), B(y,2 q+3), andB(y,2 q+4). The 2:1 Mux R(y,2 q+3) has two inputs namely Ri(y,2 q+3) andBo(y,2 q+3) and has one output Ro(y,2 q+3). The 2:1 Mux R(y,2 q+4) hastwo inputs namely Ri(y,2 q+4) and Bo(y,2 q+4) and has one output Ro(y,2q+4). The 2:1 Mux F(y,2 q+3) has two inputs namely Ro(y,2 q+3) andRo(y,2 q+4) and has one output Fo(y,2 q+3). The 2:1 Mux F(y,2 q+4) hastwo inputs namely Ro(y,2 q+3) and Ro(y,2 q+4) and has one output Fo(y,2q+4).

The 2:1 Mux U(y,2 q+3) has two inputs namely Ui(y,2 q+3) and Fo(y,2 q+3)and has one output Uo(y,2 q+3). The 2:1 Mux U(y,2 q+4) has two inputsnamely Ui(y,2 q+4) and Fo(y,2 q+4) and has one output Uo(y,2 q+4). The2:1 Mux B(y,2 q+3) has two inputs namely Uo(y,2 q+3) and Uo(y,2 q+4) andhas one output Bo(y,2 q+3). The 2:1 Mux B(y,2 q+4) has two inputs namelyUo(y,2 q+3) and Uo(y,2 q+4) and has one output Bo(y,2 q+4).

The output Fo(y,2 q+1) of the stage (ring “y”, stage “q”) is connectedto the input Ri(y,2 q+3) of the stage (ring “y”, stage “q+1”). And theoutput Bo(y,2 q+3) of the stage (ring “y”, stage “q+1”) is connected tothe input Ui(y,2 q+1) of the stage (ring “y”, stage “q”).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to the input Ri(y,2 q+4) of the stage (ring “y”,stage “q+1”). The output Bo(x,2 p+4) of the stage (ring “x”, stage“p+1”) is connected via the wire Hop(1,2) to the input Ui(y,2 q+2) ofthe stage (ring “y”, stage “q”).

The output Fo(y,2 q+2) of the stage (ring “y”, stage “q”) is connectedvia the wire Hop(2,1) to the input Ri(x,2 p+4) of the stage (ring “x”,stage “p+1”). The output Bo(y,2 q+4) of the stage (ring “y”, stage“q+1”) is connected via the wire Hop(2,2) to the input Ui(x,2 p+2) ofthe stage (ring “x”, stage “p”).

Ring “x” and ring “y” may or may not belong to the same block of thecomplete multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s). If ring“x” and ring “y” belong to the same block of the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s), then the wires Hop(1,1),Hop(1,2), Hop(2,1), and Hop(2,2) are hereinafter called “internal hopwires”. For example if “x=2” and “y=3” and both the ring 2 and ring 3belong to the same block (9,9) of 2D-grid 800, then the wires Hop(1,1),Hop(1,2), Hop(2,1), and Hop(2,2) are “internal hop wires”.

If ring “x” and ring “y” belong to the different blocks of the completemulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s), then the wiresHop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) are hereinafter called“external hop wires”. The external hop wires Hop(1,1), Hop(1,2),Hop(2,1), and Hop(2,2) may be horizontal wires or vertical wires. Thelength of the external hop wires is manhattan distance between thecorresponding blocks, hereinafter “hop length”. For example if ring “x”belongs to block (1,1) and ring “y” belongs to block (1,6) of 2D-grid800 then the external hop wires are hereinafter called “horizontalexternal hop wires”. And the hop length of the horizontal hop wiresHop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) is given by 6−1=5. Similarlyif ring “x” and ring “y” belong to two blocks in the same horizontal rowof 2D-grid 800, then the wires Hop(1,1), Hop(1,2), Hop(2,1), andHop(2,2) are horizontal external hop wires.

For example if ring “x” belongs to block (1,1) and ring “y” belongs toblock (9,1) of 2D-grid 800 then the external hop wires are hereinaftercalled “vertical external hop wires”. And the hop length of the verticalhop wires Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) is given by 9−1=8.Similarly if ring “x” and ring “y” belong to two blocks in the samevertical column of 2D-grid 800, then the wires Hop(1,1), Hop(1,2),Hop(2,1), and Hop(2,2) are vertical external hop wires. External hopwires are typically horizontal or vertical according to the currentinvention.

Referring to diagram 300B in FIG. 3B illustrates all the connectionsbetween two arbitrary successive stages of a ring namely the stages(ring “x”, stage “p”) and (ring “x”, stage “p+1”) and two otherarbitrary successive stages of any other ring namely the stages (ring“y”, stage “q”) and (ring “y”, stage “q+1”), of the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 8 inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), Ui(x,2 p+2), J1, K1, L1, and M1; and 4 outputsBo(x,2 p+1), Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring“x”, stage “p’) also consists of eight 2:1 Muxes namely R(x,2 p+1),R(x,2 p+2), F(x,2 p+1), F(x,2 p+2), U(x,2 p+1), U(x,2 p+2), B(x,2 p+1),and B(x,2 p+2). The 2:1 Mux R(x,2 p+1) has two inputs namely Ri(x,2 p+1)and J1, and has one output Ro(x,2 p+1). The 2:1 Mux R(x,2 p+2) has twoinputs namely Ri(x,2 p+2) and K1, and has one output Ro(x,2 p+2). The2:1 Mux F(x,2 p+1) has two inputs namely Ro(x,2 p+1) and Uo(x,2 p+2),and has one output Fo(x,2 p+1). The 2:1 Mux F(x,2 p+2) has two inputsnamely Ro(x,2 p+2) and Uo(x,2 p+1), and has one output Fo(x,2 p+2).

The 2:1 Mux U(x,2 p+1) has two inputs namely Ui(x,2 p+1) and L1, and hasone output Uo(x,2 p+1). The 2:1 Mux U(x,2 p+2) has two inputs namelyUi(x,2 p+2) and M1, and has one output Uo(x,2 p+2). The 2:1 Mux B(x,2p+1) has two inputs namely Uo(x,2 p+1) and Ro(x,2 p+2), and has oneoutput Bo(x,2 p+1). The 2:1 Mux B(x,2 p+2) has two inputs namely Uo(x,2p+2) and Ro(x,2 p+1), and has one output Bo(x,2 p+2).

The stage (ring “x”, stage “p+1”) consists of 8 inputs namely Ri(x,2p+3), Ri(x,2 p+4), Ui(x,2 p+3), Ui(x,2 p+4), J2, K2, L2, and M2; and 4outputs Bo(x,2 p+3), Bo(x,2 p+4), Fo(x,2 p+3), and Fo(x,2 p+4). Thestage (ring “x”, stage “p+1”) also consists of eight 2:1 Muxes namelyR(x,2 p+3), R(x,2 p+4), F(x,2 p+3), F(x,2 p+4), U(x,2 p+3), U(x,2 p+4),B(x,2 p+3), and B(x,2 p+4). The 2:1 Mux R(x,2 p+3) has two inputs namelyRi(x,2 p+3) and J2, and has one output Ro(x,2 p+3). The 2:1 Mux R(x,2p+4) has two inputs namely Ri(x,2 p+4) and K2, and has one output Ro(x,2p+4). The 2:1 Mux F(x,2 p+3) has two inputs namely Ro(x,2 p+3) andUo(x,2 p+4), and has one output Fo(x,2 p+3). The 2:1 Mux F(x,2 p+4) hastwo inputs namely Ro(x,2 p+4) and Uo(x,2 p+3), and has one output Fo(x,2p+4).

The 2:1 Mux U(x,2 p+3) has two inputs namely Ui(x,2 p+3) and L2, and hasone output Uo(x,2 p+3). The 2:1 Mux U(x,2 p+4) has two inputs namelyUi(x,2 p+4) and M2, and has one output Uo(x,2 p+4). The 2:1 Mux B(x,2p+3) has two inputs namely Uo(x,2 p+3) and Ro(x,2 p+4), and has oneoutput Bo(x,2 p+3). The 2:1 Mux B(x,2 p+4) has two inputs namely Uo(x,2p+4) and Ro(x,2 p+3), and has one output Bo(x,2 p+4).

The output Fo(x,2 p+1) of the stage (ring “x”, stage “p”) is connectedto the input Ri(x,2 p+3) of the stage (ring “x”, stage “p+1”). And theoutput Bo(x,2 p+3) of the stage (ring “x”, stage “p+1”) is connected tothe input Ui(x,2 p+1) of the stage (ring “x”, stage “p”).

The stage (ring “y”, stage “q”) consists of 8 inputs namely Ri(y,2 q+1),Ri(y,2 q+2), Ui(y,2 q+1), Ui(y,2 q+2), J3, K3, L3, and M3; and 4 outputsBo(y,2 q+1), Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring“y”, stage “q’) also consists of eight 2:1 Muxes namely R(y,2 q+1),R(y,2 q+2), F(y,2 q+1), F(y,2 q+2), U(y,2 q+1), U(y,2 q+2), B(y,2 q+1),and B(y,2 q+2). The 2:1 Mux R(y,2 q+1) has two inputs namely Ri(y,2 q+1)and J3, and has one output Ro(y,2 q+1). The 2:1 Mux R(y,2 q+2) has twoinputs namely Ri(y,2 q+2) and K3, and has one output Ro(y,2 q+2). The2:1 Mux F(y,2 q+1) has two inputs namely Ro(y,2 q+1) and Uo(y,2 q+2),and has one output Fo(y,2 q+1). The 2:1 Mux F(y,2 q+2) has two inputsnamely Ro(y,2 q+2) and Uo(y,2 q+1) and has one output Fo(y,2 q+2).

The 2:1 Mux U(y,2 q+1) has two inputs namely Ui(y,2 q+1) and L3, and hasone output Uo(y,2 q+1). The 2:1 Mux U(y,2 q+2) has two inputs namelyUi(y,2 q+2) and M3, and has one output Uo(y,2 q+2). The 2:1 Mux B(y,2q+1) has two inputs namely Uo(y,2 q+1) and Ro(y,2 q+2), and has oneoutput Bo(y,2 q+1). The 2:1 Mux B(y,2 q+2) has two inputs namely Uo(y,2q+2) and Ro(y,2 q+1), and has one output Bo(y,2 q+2).

The stage (ring “y”, stage “q+1”) consists of 8 inputs namely Ri(y,2q+3), Ri(y,2 q+4), Ui(y,2 q+3), Ui(y,2 q+4), J4, K4, L4, and M4; and 4outputs Bo(y,2 q+3), Bo(y,2 q+4), Fo(y,2 q+3), and Fo(y,2 q+4). Thestage (ring “y”, stage “q+1”) also consists of eight 2:1 Muxes namelyR(y,2 q+3), R(y,2 q+4), F(y,2 q+3), F(y,2 q+4), U(y,2 q+3), U(y,2 q+4),B(y,2 q+3), and B(y,2 q+4). The 2:1 Mux R(y,2 q+3) has two inputs namelyRi(y,2 q+3) and J4, and has one output Ro(y,2 q+3). The 2:1 Mux R(y,2q+4) has two inputs namely Ri(y,2 q+4) and K4, and has one output Ro(y,2q+4). The 2:1 Mux F(y,2 q+3) has two inputs namely Ro(y,2 q+3) andUo(y,2 q+4), and has one output Fo(y,2 q+3). The 2:1 Mux F(y,2 q+4) hastwo inputs namely Ro(y,2 q+4) and Uo(y,2 q+3), and has one output Fo(y,2q+4).

The 2:1 Mux U(y,2 q+3) has two inputs namely Ui(y,2 q+3) and L4, and hasone output Uo(y,2 q+3). The 2:1 Mux U(y,2 q+4) has two inputs namelyUi(y,2 q+4) and M4, and has one output Uo(y,2 q+4). The 2:1 Mux B(y,2q+3) has two inputs namely Uo(y,2 q+3) and Ro(y,2 q+4), and has oneoutput Bo(y,2 q+3). The 2:1 Mux B(y,2 q+4) has two inputs namely Uo(y,2q+4) and Ro(y,2 q+3), and has one output Bo(y,2 q+4).

The output Fo(y,2 q+1) of the stage (ring “y”, stage “q”) is connectedto the input Ri(y,2 q+3) of the stage (ring “y”, stage “q+1”). And theoutput Bo(y,2 q+3) of the stage (ring “y”, stage “q+1”) is connected tothe input Ui(y,2 q+1) of the stage (ring “y”, stage “q”).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to the input Ri(y,2 q+4) of the stage (ring “y”,stage “q+1”). The output Bo(x,2 p+4) of the stage (ring “x”, stage“p+1”) is connected via the wire Hop(1,2) to the input Ui(y,2 q+2) ofthe stage (ring “y”, stage “q”).

The output Fo(y,2 q+2) of the stage (ring “y”, stage “q”) is connectedvia the wire Hop(2,1) to the input Ri(x,2 p+4) of the stage (ring “x”,stage “p+1”). The output Bo(y,2 q+4) of the stage (ring “y”, stage“q+1”) is connected via the wire Hop(2,2) to the input Ui(x,2 p+2) ofthe stage (ring “x”, stage “p”).

In various embodiments, the inputs J1, K1, L1, and M1 are connected fromany of the outputs of any other stages of any ring of any block of themulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s). Similarly theinputs J2, K2, L2, and M2 are connected from any of the outputs of anyother stages of any ring of any block of the multi-stage hierarchicalnetwork V_(Comb)(N₁,N₂,d,s). Similarly the inputs J3, K3, L3, and M3 areconnected from any of the outputs of any other stages of any ring of anyblock of the multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s).Finally the inputs J4, K4, L4, and M4 are connected from any of theoutputs of any other stages of any ring of any block of the multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s).

Referring to diagram 300C in FIG. 3C, illustrates all the connectionsbetween two arbitrary successive stages of a ring namely the stages(ring “x”, stage “p”) and (ring “x”, stage “p+1”) and two otherarbitrary successive stages of any other ring namely the stages (ring“y”, stage “q”) and (ring “y”, stage “q+1”), of the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 4 inputs namely Fi(x,2 p+1),Fi(x,2 p+2), Ui(x,2 p+1), and Ui(x,2 p+2); and 4 outputs Bo(x,2 p+1),Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring “x”, stage“p’) also consists of six 2:1 Muxes namely F(x,2 p+1), F(x,2 p+2), U(x,2p+1), U(x,2 p+2), B(x,2 p+1), and B(x,2 p+2). The 2:1 Mux F(x,2 p+1) hastwo inputs namely Fi(x,2 p+1) and Fi(x,2 p+2) and has one output Fo(x,2p+1). The 2:1 Mux F(x,2 p+2) has two inputs namely Fi(x,2 p+1) andFi(x,2 p+2) and has one output Fo(x,2 p+2).

The 2:1 Mux U(x,2 p+1) has two inputs namely Ui(x,2 p+1) and Fo(x,2 p+1)and has one output Uo(x,2 p+1). The 2:1 Mux U(x,2 p+2) has two inputsnamely Ui(x,2 p+2) and Fo(x,2 p+2) and has one output Uo(x,2 p+2). The2:1 Mux B(x,2 p+1) has two inputs namely Uo(x,2 p+1) and Uo(x,2 p+2) andhas one output Bo(x,2 p+1). The 2:1 Mux B(x,2 p+2) has two inputs namelyUo(x,2 p+1) and Uo(x,2 p+2) and has one output Bo(x,2 p+2).

The stage (ring “x”, stage “p+1”) consists of 4 inputs namely Fi(x,2p+3), Fi(x,2 p+4), Ui(x,2 p+3), and Ui(x,2 p+4); and 4 outputs Bo(x,2p+3), Bo(x,2 p+4), Fo(x,2 p+3), and Fo(x,2 p+4). The stage (ring “x”,stage “p+1”) also consists of six 2:1 Muxes namely F(x,2 p+3), F(x,2p+4), U(x,2 p+3), U(x,2 p+4), B(x,2 p+3), and B(x,2 p+4). The 2:1 MuxF(x,2 p+3) has two inputs namely Fi(x,2 p+3) and Fi(x,2 p+4) and has oneoutput Fo(x,2 p+3). The 2:1 Mux F(x,2 p+4) has two inputs namely Fi(x,2p+3) and Fi(x,2 p+4) and has one output Fo(x,2 p+4).

The 2:1 Mux U(x,2 p+3) has two inputs namely Ui(x,2 p+3) and Fo(x,2 p+3)and has one output Uo(x,2 p+3). The 2:1 Mux U(x,2 p+4) has two inputsnamely Ui(x,2 p+4) and Fo(x,2 p+4) and has one output Uo(x,2 p+4). The2:1 Mux B(x,2 p+3) has two inputs namely Uo(x,2 p+3) and Uo(x,2 p+4) andhas one output Bo(x,2 p+3). The 2:1 Mux B(x,2 p+4) has two inputs namelyUo(x,2 p+3) and Uo(x,2 p+4) and has one output Bo(x,2 p+4).

The output Fo(x,2 p+1) of the stage (ring “x”, stage “p”) is connectedto the input Fi(x,2 p+3) of the stage (ring “x”, stage “p+1”). And theoutput Bo(x,2 p+3) of the stage (ring “x”, stage “p+1”) is connected tothe input Ui(x,2 p+1) of the stage (ring “x”, stage “p”).

The stage (ring “y”, stage “q”) consists of 4 inputs namely Fi(y,2 q+1),Fi(y,2 q+2), Ui(y,2 q+1), and Ui(y,2 q+2); and 4 outputs Bo(y,2 q+1),Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring “y”, stage“q’) also consists of six 2:1 Muxes namely F(y,2 q+1), F(y,2 q+2), U(y,2q+1), U(y,2 q+2), B(y,2 q+1), and B(y,2 q+2). The 2:1 Mux F(y,2 q+1) hastwo inputs namely Fi(y,2 q+1) and Fi(y,2 q+2) and has one output Fo(y,2q+1). The 2:1 Mux F(y,2 q+2) has two inputs namely Fi(y,2 q+1) andFi(y,2 q+2) and has one output Fo(y,2 q+2).

The 2:1 Mux U(y,2 q+1) has two inputs namely Ui(y,2 q+1) and Fo(y,2 q+1)and has one output Uo(y,2 q+1). The 2:1 Mux U(y,2 q+2) has two inputsnamely Ui(y,2 q+2) and Fo(y,2 q+2) and has one output Uo(y,2 q+2). The2:1 Mux B(y,2 q+1) has two inputs namely Uo(y,2 q+1) and Uo(y,2 q+2) andhas one output Bo(y,2 q+1). The 2:1 Mux B(y,2 q+2) has two inputs namelyUo(y,2 q+1) and Uo(y,2 q+2) and has one output Bo(y,2 q+2).

The stage (ring “y”, stage “q+1”) consists of 4 inputs namely Fi(y,2q+3), Fi(y,2 q+4), Ui(y,2 q+3), and Ui(y,2 q+4); and 4 outputs Bo(y,2q+3), Bo(y,2 q+4), Fo(y,2 q+3), and Fo(y,2 q+4). The stage (ring “y”,stage “q+1”) also consists of six 2:1 Muxes namely F(y,2 q+3), F(y,2q+4), U(y,2 q+3), U(y,2 q+4), B(y,2 q+3), and B(y,2 q+4). The 2:1 MuxF(y,2 q+3) has two inputs namely Fi(y,2 q+3) and Fi(y,2 q+4) and has oneoutput Fo(y,2 q+3). The 2:1 Mux F(y,2 q+4) has two inputs namely Fi(y,2q+3) and Fi(y,2 q+4) and has one output Fo(y,2 q+4).

The 2:1 Mux U(y,2 q+3) has two inputs namely Ui(y,2 q+3) and Fo(y,2 q+3)and has one output Uo(y,2 q+3). The 2:1 Mux U(y,2 q+4) has two inputsnamely Ui(y,2 q+4) and Fo(y,2 q+4) and has one output Uo(y,2 q+4). The2:1 Mux B(y,2 q+3) has two inputs namely Uo(y,2 q+3) and Uo(y,2 q+4) andhas one output Bo(y,2 q+3). The 2:1 Mux B(y,2 q+4) has two inputs namelyUo(y,2 q+3) and Uo(y,2 q+4) and has one output Bo(y,2 q+4).

The output Fo(y,2 q+1) of the stage (ring “y”, stage “q”) is connectedto the input Fi(y,2 q+3) of the stage (ring “y”, stage “q+1”). And theoutput Bo(y,2 q+3) of the stage (ring “y”, stage “q+1”) is connected tothe input Ui(y,2 q+1) of the stage (ring “y”, stage “q”).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to the input Fi(y,2 q+4) of the stage (ring “y”,stage “q+1”). The output Bo(x,2 p+4) of the stage (ring “x”, stage“p+1”) is connected via the wire Hop(1,2) to the input Ui(y,2 q+2) ofthe stage (ring “y”, stage “q”).

The output Fo(y,2 q+2) of the stage (ring “y”, stage “q”) is connectedvia the wire Hop(2,1) to the input Fi(x,2 p+4) of the stage (ring “x”,stage “p+1”). The output Bo(y,2 q+4) of the stage (ring “y”, stage“q+1”) is connected via the wire Hop(2,2) to the input Ui(x,2 p+2) ofthe stage (ring “x”, stage “p”).

Referring to diagram 300D in FIG. 3D, illustrates all the connectionsbetween two arbitrary successive stages of a ring namely the stages(ring “x”, stage “p”) and (ring “x”, stage “p+1”) and two otherarbitrary successive stages of any other ring namely the stages (ring“y”, stage “q”) and (ring “y”, stage “q+1”), of the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 4 inputs namely Fi(x,2 p+1),Fi(x,2 p+2), Ui(x,2 p+1), and Ui(x,2 p+2); and 4 outputs Bo(x,2 p+1),Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring “x”, stage“p’) also consists of six 2:1 Muxes namely F(x,2 p+1), F(x,2 p+2), U(x,2p+1), U(x,2 p+2), B(x,2 p+1), and B(x,2 p+2). The 2:1 Mux F(x,2 p+1) hastwo inputs namely Fi(x,2 p+1) and Fi(x,2 p+2) and has one output Fo(x,2p+1). The 2:1 Mux F(x,2 p+2) has two inputs namely Fi(x,2 p+1) andFi(x,2 p+2) and has one output Fo(x,2 p+2).

The 2:1 Mux U(x,2 p+1) has two inputs namely Ui(x,2 p+1) and Fo(x,2 p+1)and has one output Uo(x,2 p+1). The 2:1 Mux U(x,2 p+2) has two inputsnamely Ui(x,2 p+2) and Fo(x,2 p+2) and has one output Uo(x,2 p+2). The2:1 Mux B(x,2 p+1) has two inputs namely Uo(x,2 p+1) and Uo(x,2 p+2) andhas one output Bo(x,2 p+1). The 2:1 Mux B(x,2 p+2) has two inputs namelyUo(x,2 p+1) and Uo(x,2 p+2) and has one output Bo(x,2 p+2).

The stage (ring “x”, stage “p+1”) consists of 2 inputs namely Fi(x,2p+3), Fi(x,2 p+4); and 2 outputs Fo(x,2 p+3), and Fo(x,2 p+4). The stage(ring “x”, stage “p+1”) also consists of two 2:1 Muxes namely F(x,2 p+3)and F(x,2 p+4). The 2:1 Mux F(x,2 p+3) has two inputs namely Fi(x,2 p+3)and Fi(x,2 p+4) and has one output Fo(x,2 p+3). The 2:1 Mux F(x,2 p+4)has two inputs namely Fi(x,2 p+3) and Fi(x,2 p+4) and has one outputFo(x,2 p+4).

The output Fo(x,2 p+1) of the stage (ring “x”, stage “p”) is connectedto the input Fi(x,2 p+3) of the stage (ring “x”, stage “p+1”). And theoutput Fo(x,2 p+3) of the stage (ring “x”, stage “p+1”) is connected tothe input Ui(x,2 p+1) of the stage (ring “x”, stage “p”).

The stage (ring “y”, stage “q”) consists of 4 inputs namely Fi(y,2 q+1),Fi(y,2 q+2), Ui(y,2 q+1), and Ui(y,2 q+2); and 4 outputs Bo(y,2 q+1),Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring “y”, stage“q’) also consists of six 2:1 Muxes namely F(y,2 q+1), F(y,2 q+2), U(y,2q+1), U(y,2 q+2), B(y,2 q+1), and B(y,2 q+2). The 2:1 Mux F(y,2 q+1) hastwo inputs namely Fi(y,2 q+1) and Fi(y,2 q+2) and has one output Fo(y,2q+1). The 2:1 Mux F(y,2 q+2) has two inputs namely Fi(y,2 q+1) andFi(y,2 q+2) and has one output Fo(y,2 q+2).

The 2:1 Mux U(y,2 q+1) has two inputs namely Ui(y,2 q+1) and Fo(y,2 q+1)and has one output Uo(y,2 q+1). The 2:1 Mux U(y,2 q+2) has two inputsnamely Ui(y,2 q+2) and Fo(y,2 q+2) and has one output Uo(y,2 q+2). The2:1 Mux B(y,2 q+1) has two inputs namely Uo(y,2 q+1) and Uo(y,2 q+2) andhas one output Bo(y,2 q+1). The 2:1 Mux B(y,2 q+2) has two inputs namelyUo(y,2 q+1) and Uo(y,2 q+2) and has one output Bo(y,2 q+2).

The stage (ring “y”, stage “q+1”) consists of 4 inputs namely Fi(y,2q+3), Fi(y,2 q+4), Ui(y,2 q+3), and Ui(y,2 q+4); and 4 outputs Bo(y,2q+3), Bo(y,2 q+4), Fo(y,2 q+3), and Fo(y,2 q+4). The stage (ring “y”,stage “q+1”) also consists of six 2:1 Muxes namely F(y,2 q+3), F(y,2q+4), U(y,2 q+3), U(y,2 q+4), B(y,2 q+3), and B(y,2 q+4). The 2:1 MuxF(y,2 q+3) has two inputs namely Fi(y,2 q+3) and Fi(y,2 q+4) and has oneoutput Fo(y,2 q+3). The 2:1 Mux F(y,2 q+4) has two inputs namely Fi(y,2q+3) and Fi(y,2 q+4) and has one output Fo(y,2 q+4).

The 2:1 Mux U(y,2 q+3) has two inputs namely Ui(y,2 q+3) and Fo(y,2 q+3)and has one output Uo(y,2 q+3). The 2:1 Mux U(y,2 q+4) has two inputsnamely Ui(y,2 q+4) and Fo(y,2 q+4) and has one output Uo(y,2 q+4). The2:1 Mux B(y,2 q+3) has two inputs namely Uo(y,2 q+3) and Uo(y,2 q+4) andhas one output Bo(y,2 q+3). The 2:1 Mux B(y,2 q+4) has two inputs namelyUo(y,2 q+3) and Uo(y,2 q+4) and has one output Bo(y,2 q+4).

The output Fo(y,2 q+1) of the stage (ring “y”, stage “q”) is connectedto the input Fi(y,2 q+3) of the stage (ring “y”, stage “q+1”). And theoutput Bo(y,2 q+3) of the stage (ring “y”, stage “q+1”) is connected tothe input Ui(y,2 q+1) of the stage (ring “y”, stage “q”).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to the input Fi(y,2 q+4) of the stage (ring “y”,stage “q+1”). The output Fo(x,2 p+4) of the stage (ring “x”, stage“p+1”) is connected via the wire Hop(1,2) to the input Ui(y,2 q+2) ofthe stage (ring “y”, stage “q”).

The output Fo(y,2 q+2) of the stage (ring “y”, stage “q”) is connectedvia the wire Hop(2,1) to the input Fi(x,2 p+4) of the stage (ring “x”,stage “p+1”). The output Bo(y,2 q+4) of the stage (ring “y”, stage“q+1”) is connected via the wire Hop(2,2) to the input Ui(x,2 p+2) ofthe stage (ring “x”, stage “p”).

Referring to diagram 300E in FIG. 3E, illustrates all the connectionsbetween root stage of a ring namely the stage (ring “x”, stage “p”) andtwo other arbitrary successive stages of any other ring namely thestages (ring “y”, stage “q”) and (ring “y”, stage “q+1”), of thecomplete multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 4 inputs namely Fi(x,2 p+1),Fi(x,2 p+2), Ui(x,2 p+1), and Ui(x,2 p+2); and 4 outputs Bo(x,2 p+1),Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring “x”, stage“p’) also consists of six 2:1 Muxes namely F(x,2 p+1), F(x,2 p+2), U(x,2p+1), U(x,2 p+2), B(x,2 p+1), and B(x,2 p+2). The 2:1 Mux F(x,2 p+1) hastwo inputs namely Fi(x,2 p+1) and Fi(x,2 p+2) and has one output Fo(x,2p+1). The 2:1 Mux F(x,2 p+2) has two inputs namely Fi(x,2 p+1) andFi(x,2 p+2) and has one output Fo(x,2 p+2).

The 2:1 Mux U(x,2 p+1) has two inputs namely Ui(x,2 p+1) and Fo(x,2 p+1)and has one output Uo(x,2 p+1). The 2:1 Mux U(x,2 p+2) has two inputsnamely Ui(x,2 p+2) and Fo(x,2 p+2) and has one output Uo(x,2 p+2). The2:1 Mux B(x,2 p+1) has two inputs namely Uo(x,2 p+1) and Uo(x,2 p+2) andhas one output Bo(x,2 p+1). The 2:1 Mux B(x,2 p+2) has two inputs namelyUo(x,2 p+1) and Uo(x,2 p+2) and has one output Bo(x,2 p+2).

The stage (ring “y”, stage “q”) consists of 4 inputs namely Fi(y,2 q+1),Fi(y,2 q+2), Ui(y,2 q+1), and Ui(y,2 q+2); and 4 outputs Bo(y,2 q+1),Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring “y”, stage“q’) also consists of six 2:1 Muxes namely F(y,2 q+1), F(y,2 q+2), U(y,2q+1), U(y,2 q+2), B(y,2 q+1), and B(y,2 q+2). The 2:1 Mux F(y,2 q+1) hastwo inputs namely Fi(y,2 q+1) and Fi(y,2 q+2) and has one output Fo(y,2q+1). The 2:1 Mux F(y,2 q+2) has two inputs namely Fi(y,2 q+1) andFi(y,2 q+2) and has one output Fo(y,2 q+2).

The 2:1 Mux U(y,2 q+1) has two inputs namely Ui(y,2 q+1) and Fo(y,2 q+1)and has one output Uo(y,2 q+1). The 2:1 Mux U(y,2 q+2) has two inputsnamely Ui(y,2 q+2) and Fo(y,2 q+2) and has one output Uo(y,2 q+2). The2:1 Mux B(y,2 q+1) has two inputs namely Uo(y,2 q+1) and Uo(y,2 q+2) andhas one output Bo(y,2 q+1). The 2:1 Mux B(y,2 q+2) has two inputs namelyUo(y,2 q+1) and Uo(y,2 q+2) and has one output Bo(y,2 q+2).

The stage (ring “y”, stage “q+1”) consists of 4 inputs namely Fi(y,2q+3), Fi(y,2 q+4), Ui(y,2 q+3), and Ui(y,2 q+4); and 4 outputs Bo(y,2q+3), Bo(y,2 q+4), Fo(y,2 q+3), and Fo(y,2 q+4). The stage (ring “y”,stage “q+1”) also consists of six 2:1 Muxes namely F(y,2 q+3), F(y,2q+4), U(y,2 q+3), U(y,2 q+4), B(y,2 q+3), and B(y,2 q+4). The 2:1 MuxF(y,2 q+3) has two inputs namely Fi(y,2 q+3) and Fi(y,2 q+4) and has oneoutput Fo(y,2 q+3). The 2:1 Mux F(y,2 q+4) has two inputs namely Fi(y,2q+3) and Fi(y,2 q+4) and has one output Fo(y,2 q+4).

The 2:1 Mux U(y,2 q+3) has two inputs namely Ui(y,2 q+3) and Fo(y,2 q+3)and has one output Uo(y,2 q+3). The 2:1 Mux U(y,2 q+4) has two inputsnamely Ui(y,2 q+4) and Fo(y,2 q+4) and has one output Uo(y,2 q+4). The2:1 Mux B(y,2 q+3) has two inputs namely Uo(y,2 q+3) and Uo(y,2 q+4) andhas one output Bo(y,2 q+3). The 2:1 Mux B(y,2 q+4) has two inputs namelyUo(y,2 q+3) and Uo(y,2 q+4) and has one output Bo(y,2 q+4).

The output Fo(y,2 q+1) of the stage (ring “y”, stage “q”) is connectedto the input Fi(y,2 q+3) of the stage (ring “y”, stage “q+1”). And theoutput Bo(y,2 q+3) of the stage (ring “y”, stage “q+1”) is connected tothe input Ui(y,2 q+1) of the stage (ring “y”, stage “q”).

The output Fo(x,2 p+1) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,2) to the input Ui(y,2 q+2) of the stage (ring “y”,stage “q”). The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) isconnected via the wire Hop(1,1) to the input Fi(y,2 q+4) of the stage(ring “y”, stage “q+1”).

The output Fo(y,2 q+2) of the stage (ring “y”, stage “q”) is connectedvia the wire Hop(2,1) to the input Ui(x,2 p+1) of the stage (ring “x”,stage “p”). The output Bo(y,2 q+4) of the stage (ring “y”, stage “q+1”)is connected via the wire Hop(2,2) to the input Ui(x,2 p+2) of the stage(ring “x”, stage “p”).

Just like in diagram 300A of FIG. 3A, in diagram 300B of FIG. 3B, indiagram 300C of FIG. 3C, diagram 300D of FIG. 3D, and in diagram 300E ofFIG. 3E, the wires Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) are eitherinternal hop wires or horizontal external hop wires or vertical externalhop wires.

The diagram 400A of FIG. 4A and 400B of FIG. 4B are differentembodiments of all the connections between two arbitrary stages in twodifferent rings of the same block or two different rings of differentblocks of 2D-grid 800. Referring to diagram 400A in FIG. 4A illustratesall the connections between an arbitrary stage of a ring namely thestages (ring “x”, stage “p”), and another arbitrary stage of any otherring namely the stages (ring “y”, stage “q”) of the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 8 inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), Ui(x,2 p+2), J1, K1, L1, and M1; and 4 outputsBo(x,2 p+1), Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring“x”, stage “p’) also consists of eight 2:1 Muxes namely R(x,2 p+1),R(x,2 p+2), F(x,2 p+1), F(x,2 p+2), U(x,2 p+1), U(x,2 p+2), B(x,2 p+1),and B(x,2 p+2). The 2:1 Mux R(x,2 p+1) has two inputs namely Ri(x,2 p+1)and J1 and has one output Ro(x,2 p+1). The 2:1 Mux R(x,2 p+2) has twoinputs namely Ri(x,2 p+2) and K1 and has one output Ro(x,2 p+2). The 2:1Mux F(x,2 p+1) has two inputs namely Ro(x,2 p+1) and Uo(x,2 p+2) and hasone output Fo(x,2 p+1). The 2:1 Mux F(x,2 p+2) has two inputs namelyRo(x,2 p+2) and Uo(x,2 p+1) and has one output Fo(x,2 p+2).

The 2:1 Mux U(x,2 p+1) has two inputs namely Ui(x,2 p+1) and L1 and hasone output Uo(x,2 p+1). The 2:1 Mux U(x,2 p+2) has two inputs namelyUi(x,2 p+2) and M1 and has one output Uo(x,2 p+2). The 2:1 Mux B(x,2p+1) has two inputs namely Uo(x,2 p+1) and Ro(x,2 p+2) and has oneoutput Bo(x,2 p+1). The 2:1 Mux B(x,2 p+2) has two inputs namely Uo(x,2p+2) and Ro(x,2 p+1) and has one output Bo(x,2 p+2).

The stage (ring “y”, stage “q”) consists of 8 inputs namely Ri(y,2 q+1),Ri(y,2 q+2), Ui(y,2 q+1), Ui(y,2 q+2), J3, K3, L3, and M3; and 4 outputsBo(y,2 q+1), Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring“y”, stage “q’) also consists of eight 2:1 Muxes namely R(y,2 q+1),R(y,2 q+2), F(y,2 q+1), F(y,2 q+2), U(y,2 q+1), U(y,2 q+2), B(y,2 q+1),and B(y,2 q+2). The 2:1 Mux R(y,2 q+1) has two inputs namely Ri(y,2 q+1)and J3 and has one output Ro(y,2 q+1). The 2:1 Mux R(y,2 q+2) has twoinputs namely Ri(y,2 q+2) and K3 and has one output Ro(y,2 q+2). The 2:1Mux F(y,2 q+1) has two inputs namely Ro(y,2 q+1) and Uo(y,2 q+2) and hasone output Fo(y,2 q+1). The 2:1 Mux F(y,2 q+2) has two inputs namelyRo(y,2 q+2) and Uo(y,2 q+1) and has one output Fo(y,2 q+2).

The 2:1 Mux U(y,2 q+1) has two inputs namely Ui(y,2 q+1) and L3, and hasone output Uo(y,2 q+1). The 2:1 Mux U(y,2 q+2) has two inputs namelyUi(y,2 q+2) and M3, and has one output Uo(y,2 q+2). The 2:1 Mux B(y,2q+1) has two inputs namely Uo(y,2 q+1) and Ro(y,2 q+2) and has oneoutput Bo(y,2 q+1). The 2:1 Mux B(y,2 q+2) has two inputs namely Uo(y,2q+2) and Ro(y,2 q+1) and has one output Bo(y,2 q+2).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to the input Ri(y,2 q+2) of the stage (ring “y”,stage “q”). The output Bo(y,2 q+2) of the stage (ring “y”, stage “q”) isconnected via the wire Hop(1,2) to the input Ui(x,2 p+2) of the stage(ring “x”, stage “p”).

Ring “x” and ring “y” may or may not belong to the same block of thecomplete multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s). If ring“x” and ring “y” belong to the same block of the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s), then the wires Hop(1,1) andHop(1,2) are hereinafter called “internal hop wires”. For example if“x=2” and “y=3” and both the ring 2 and ring 3 belong to the same block(9,9) of 2D-grid 800, then the wires Hop(1,1) and Hop(1,2) are “internalhop wires”.

If ring “x” and ring “y” belong to the different blocks of the completemulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s), then the wiresHop(1,1) and Hop(1,2) are hereinafter called “external hop wires”. Theexternal hop wires Hop(1,1) and Hop(1,2) may be horizontal wires orvertical wires. The length of the external hop wires is Manhattandistance between the corresponding blocks, hereinafter “hop length”. Forexample if ring “x” belongs to block (1,1) and ring “y” belongs to block(1,6) of 2D-grid 800 then the external hop wires are hereinafter called“horizontal external hop wires”. And the hop length of the horizontalhop wires Hop(1,1) and Hop(1,2) is given by 6−1=5. Similarly if ring “x”and ring “y” belong to two blocks in the same horizontal row of 2D-grid800, then the wires Hop(1,1) and Hop(1,2) are horizontal external hopwires.

For example if ring “x” belongs to block (1,1) and ring “y” belongs toblock (9,1) of 2D-grid 800 then the external hop wires are hereinaftercalled “vertical external hop wires”. And the hop length of the verticalhop wires Hop(1,1) and Hop(1,2) is given by 9−1=8. Similarly if ring “x”and ring “y” belong to two blocks in the same vertical column of 2D-grid800, then the wires Hop(1,1) and Hop(1,2) are vertical external hopwires. External hop wires are typically horizontal or vertical accordingto the current invention.

Referring to diagram 400B in FIG. 4B illustrates all the connectionsbetween an arbitrary stage of a ring namely the stages (ring “x”, stage“p”), and another arbitrary stage of any other ring namely the stages(ring “y”, stage “q”) of the complete multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 8 inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), Ui(x,2 p+2), J1, K1, L1, and M1; and 4 outputsBo(x,2 p+1), Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring“x”, stage “p’) also consists of four 4:1 Muxes namely F(x,2 p+1), F(x,2p+2), B(x,2 p+1), and B(x,2 p+2). The 4:1 Mux F(x,2 p+1) has four inputsnamely Ri(x,2 p+1), Ri(x,2 p+2), Ui(x,2 p+2), and J1 and has one outputFo(x,2 p+1). The 4:1 Mux F(x,2 p+2) has four inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), and K1 and has one output Fo(x,2 p+2).

The 4:1 Mux B(x,2 p+1) has four inputs namely Ui(x,2 p+1), Ui(x,2 p+2),Ri(x,2 p+2), and L1 and has one output Bo(x,2 p+1). The 2:1 Mux B(x,2p+2) has two inputs namely Ui(x,2 p+1), Ui(x,2 p+2), Ri(x,2 p+1), and M1and has one output Bo(x,2 p+2).

The stage (ring “y”, stage “q”) consists of 8 inputs namely Ri(y,2 q+1),Ri(y,2 q+2), Ui(y,2 q+1), Ui(y,2 q+2), J3, K3, L3, and M3; and 4 outputsBo(y,2 q+1), Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring“y”, stage “q’) also consists of four 4:1 Muxes namely F(y,2 q+1), F(y,2q+2), B(y,2 q+1), and B(y,2 q+2). The 4:1 Mux F(y,2 q+1) has four inputsnamely Ri(y,2 q+1), Ri(y,2 q+2), Ui(y,2 q+2), and J3 and has one outputFo(y,2 q+1). The 4:1 Mux F(y,2 q+2) has four inputs namely Ri(y,2 q+1),Ri(y,2 q+2), Ui(y,2 q+1), and K3 and has one output Fo(y,2 q+2).

The 4:1 Mux B(y,2 q+1) has four inputs namely Ui(y,2 q+1), Ui(y,2 q+2),Ri(y,2 q+2), and L3, and has one output Bo(y,2 q+1). The 4:1 Mux B(y,2q+2) has four inputs namely Ui(y,2 q+1), Ui(y,2 q+2), Ri(y,2 q+1), andM3, and has one output Bo(y,2 q+2).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to the input Ri(y,2 q+2) of the stage (ring “y”,stage “q”). The output Bo(y,2 q+2) of the stage (ring “y”, stage “q”) isconnected via the wire Hop(1,2) to the input Ui(x,2 p+2) of the stage(ring “x”, stage “p”).

Ring “x” and ring “y” may or may not belong to the same block of thecomplete multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s). If ring“x” and ring “y” belong to the same block of the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s), then the wires Hop(1,1) andHop(1,2) are hereinafter called “internal hop wires”. For example if“x=2” and “y=3” and both the ring 2 and ring 3 belong to the same block(9,9) of 2D-grid 800, then the wires Hop(1,1) and Hop(1,2) are “internalhop wires”.

If ring “x” and ring “y” belong to the different blocks of the completemulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s), then the wiresHop(1,1) and Hop(1,2) are hereinafter called “external hop wires”. Theexternal hop wires Hop(1,1) and Hop(1,2) may be horizontal wires orvertical wires. The length of the external hop wires is Manhattandistance between the corresponding blocks, hereinafter “hop length”. Forexample if ring “x” belongs to block (1,1) and ring “y” belongs to block(1,6) of 2D-grid 800 then the external hop wires are hereinafter called“horizontal external hop wires”. And the hop length of the horizontalhop wires Hop(1,1) and Hop(1,2) is given by 6−1=5. Similarly if ring “x”and ring “y” belong to two blocks in the same horizontal row of 2D-grid800, then the wires Hop(1,1) and Hop(1,2) are horizontal external hopwires.

For example if ring “x” belongs to block (1,1) and ring “y” belongs toblock (9,1) of 2D-grid 800 then the external hop wires are hereinaftercalled “vertical external hop wires”. And the hop length of the verticalhop wires Hop(1,1) and Hop(1,2) is given by 9−1=8. Similarly if ring “x”and ring “y” belong to two blocks in the same vertical column of 2D-grid800, then the wires Hop(1,1) and Hop(1,2) are vertical external hopwires. External hop wires are typically horizontal or vertical accordingto the current invention.

The diagram 500A of FIG. 5A is an embodiments of all the connectionswith multi-drop hop wires, between two arbitrary successive stages intwo different rings of different blocks of 2D-grid 800. Referring todiagram 500A in FIG. 5A illustrates all the connections with multi-drophop wires, between two arbitrary successive stages of a ring namely thestages (ring “x”, stage “p”) and (ring “x”, stage “p+1”) and two otherarbitrary successive stages of any other ring namely the stages (ring“y”, stage “q”) and (ring “y”, stage “q+1”), of the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s). The multi-drop hop wires arealso connected to two other stages (ring “a”, stage “s”) and (ring “b”,stage “t”) belonging to a third block.

The stage (ring “x”, stage “p”) consists of 8 inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), Ui(x,2 p+2), J1, K1, L1, and M1; and 4 outputsBo(x,2 p+1), Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring“x”, stage “p’) also consists of eight 2:1 Muxes namely R(x,2 p+1),R(x,2 p+2), F(x,2 p+1), F(x,2 p+2), U(x,2 p+1), U(x,2 p+2), B(x,2 p+1),and B(x,2 p+2). The 2:1 Mux R(x,2 p+1) has two inputs namely Ri(x,2 p+1)and J1, and has one output Ro(x,2 p+1). The 2:1 Mux R(x,2 p+2) has twoinputs namely Ri(x,2 p+2) and K1, and has one output Ro(x,2 p+2). The2:1 Mux F(x,2 p+1) has two inputs namely Ro(x,2 p+1) and Uo(x,2 p+2),and has one output Fo(x,2 p+1). The 2:1 Mux F(x,2 p+2) has two inputsnamely Ro(x,2 p+2) and Uo(x,2 p+1), and has one output Fo(x,2 p+2).

The 2:1 Mux U(x,2 p+1) has two inputs namely Ui(x,2 p+1) and L1, and hasone output Uo(x,2 p+1). The 2:1 Mux U(x,2 p+2) has two inputs namelyUi(x,2 p+2) and M1, and has one output Uo(x,2 p+2). The 2:1 Mux B(x,2p+1) has two inputs namely Uo(x,2 p+1) and Ro(x,2 p+2), and has oneoutput Bo(x,2 p+1). The 2:1 Mux B(x,2 p+2) has two inputs namely Uo(x,2p+2) and Ro(x,2 p+1), and has one output Bo(x,2 p+2).

The stage (ring “x”, stage “p+1”) consists of 8 inputs namely Ri(x,2p+3), Ri(x,2 p+4), Ui(x,2 p+3), Ui(x,2 p+4), J2, K2, L2, and M2; and 4outputs Bo(x,2 p+3), Bo(x,2 p+4), Fo(x,2 p+3), and Fo(x,2 p+4). Thestage (ring “x”, stage “p+1”) also consists of eight 2:1 Muxes namelyR(x,2 p+3), R(x,2 p+4), F(x,2 p+3), F(x,2 p+4), U(x,2 p+3), U(x,2 p+4),B(x,2 p+3), and B(x,2 p+4). The 2:1 Mux R(x,2 p+3) has two inputs namelyRi(x,2 p+3) and J2, and has one output Ro(x,2 p+3). The 2:1 Mux R(x,2p+4) has two inputs namely Ri(x,2 p+4) and K2, and has one output Ro(x,2p+4). The 2:1 Mux F(x,2 p+3) has two inputs namely Ro(x,2 p+3) andUo(x,2 p+4), and has one output Fo(x,2 p+3). The 2:1 Mux F(x,2 p+4) hastwo inputs namely Ro(x,2 p+4) and Uo(x,2 p+3), and has one output Fo(x,2p+4).

The 2:1 Mux U(x,2 p+3) has two inputs namely Ui(x,2 p+3) and L2, and hasone output Uo(x,2 p+3). The 2:1 Mux U(x,2 p+4) has two inputs namelyUi(x,2 p+4) and M2, and has one output Uo(x,2 p+4). The 2:1 Mux B(x,2p+3) has two inputs namely Uo(x,2 p+3) and Ro(x,2 p+4), and has oneoutput Bo(x,2 p+3). The 2:1 Mux B(x,2 p+4) has two inputs namely Uo(x,2p+4) and Ro(x,2 p+3), and has one output Bo(x,2 p+4).

The output Fo(x,2 p+1) of the stage (ring “x”, stage “p”) is connectedto the input Ri(x,2 p+3) of the stage (ring “x”, stage “p+1”). And theoutput Bo(x,2 p+3) of the stage (ring “x”, stage “p+1”) is connected tothe input Ui(x,2 p+1) of the stage (ring “x”, stage “p”).

The stage (ring “y”, stage “q”) consists of 8 inputs namely Ri(y,2 q+1),Ri(y,2 q+2), Ui(y,2 q+1), Ui(y,2 q+2), J3, K3, L3, and M3; and 4 outputsBo(y,2 q+1), Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring“y”, stage “q’) also consists of eight 2:1 Muxes namely R(y,2 q+1),R(y,2 q+2), F(y,2 q+1), F(y,2 q+2), U(y,2 q+1), U(y,2 q+2), B(y,2 q+1),and B(y,2 q+2). The 2:1 Mux R(y,2 q+1) has two inputs namely Ri(y,2 q+1)and J3, and has one output Ro(y,2 q+1). The 2:1 Mux R(y,2 q+2) has twoinputs namely Ri(y,2 q+2) and K3, and has one output Ro(y,2 q+2). The2:1 Mux F(y,2 q+1) has two inputs namely Ro(y,2 q+1) and Uo(y,2 q+2),and has one output Fo(y,2 q+1). The 2:1 Mux F(y,2 q+2) has two inputsnamely Ro(y,2 q+2) and Uo(y,2 q+1) and has one output Fo(y,2 q+2).

The 2:1 Mux U(y,2 q+1) has two inputs namely Ui(y,2 q+1) and L3, and hasone output Uo(y,2 q+1). The 2:1 Mux U(y,2 q+2) has two inputs namelyUi(y,2 q+2) and M3, and has one output Uo(y,2 q+2). The 2:1 Mux B(y,2q+1) has two inputs namely Uo(y,2 q+1) and Ro(y,2 q+2), and has oneoutput Bo(y,2 q+1). The 2:1 Mux B(y,2 q+2) has two inputs namely Uo(y,2q+2) and Ro(y,2 q+1), and has one output Bo(y,2 q+2).

The stage (ring “y”, stage “q+1”) consists of 8 inputs namely Ri(y,2q+3), Ri(y,2 q+4), Ui(y,2 q+3), Ui(y,2 q+4), J4, K4, L4, and M4; and 4outputs Bo(y,2 q+3), Bo(y,2 q+4), Fo(y,2 q+3), and Fo(y,2 q+4). Thestage (ring “y”, stage “q+1”) also consists of eight 2:1 Muxes namelyR(y,2 q+3), R(y,2 q+4), F(y,2 q+3), F(y,2 q+4), U(y,2 q+3), U(y,2 q+4),B(y,2 q+3), and B(y,2 q+4). The 2:1 Mux R(y,2 q+3) has two inputs namelyRi(y,2 q+3) and J4, and has one output Ro(y,2 q+3). The 2:1 Mux R(y,2q+4) has two inputs namely Ri(y,2 q+4) and K4, and has one output Ro(y,2q+4). The 2:1 Mux F(y,2 q+3) has two inputs namely Ro(y,2 q+3) andUo(y,2 q+4), and has one output Fo(y,2 q+3). The 2:1 Mux F(y,2 q+4) hastwo inputs namely Ro(y,2 q+4) and Uo(y,2 q+3), and has one output Fo(y,2q+4).

The 2:1 Mux U(y,2 q+3) has two inputs namely Ui(y,2 q+3) and L4, and hasone output Uo(y,2 q+3). The 2:1 Mux U(y,2 q+4) has two inputs namelyUi(y,2 q+4) and M4, and has one output Uo(y,2 q+4). The 2:1 Mux B(y,2q+3) has two inputs namely Uo(y,2 q+3) and Ro(y,2 q+4), and has oneoutput Bo(y,2 q+3). The 2:1 Mux B(y,2 q+4) has two inputs namely Uo(y,2q+4) and Ro(y,2 q+3), and has one output Bo(y,2 q+4).

The output Fo(y,2 q+1) of the stage (ring “y”, stage “q”) is connectedto the input Ri(y,2 q+3) of the stage (ring “y”, stage “q+1”). And theoutput Bo(y,2 q+3) of the stage (ring “y”, stage “q+1”) is connected tothe input Ui(y,2 q+1) of the stage (ring “y”, stage “q”).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to the input Ri(y,2 q+4) of the stage (ring “y”,stage “q+1”). The output Bo(x,2 p+4) of the stage (ring “x”, stage“p+1”) is connected via the wire Hop(1,2) to the input Ui(y,2 q+2) ofthe stage (ring “y”, stage “q”).

The output Fo(y,2 q+2) of the stage (ring “y”, stage “q”) is connectedvia the wire Hop(2,1) to the input Ri(x,2 p+4) of the stage (ring “x”,stage “p+1”). The output Bo(y,2 q+4) of the stage (ring “y”, stage“q+1”) is connected via the wire Hop(2,2) to the input Ui(x,2 p+2) ofthe stage (ring “x”, stage “p”).

In various embodiments, the inputs J1, K1, L1, and M1 are connected fromany of the outputs of any other stages of any ring of any block of themulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s). Similarly theinputs J2, K2, L2, and M2 are connected from any of the outputs of anyother stages of any ring of any block of the multi-stage hierarchicalnetwork V_(Comb)(N₁,N₂,d,s). Similarly the inputs J3, K3, L3, and M3 areconnected from any of the outputs of any other stages of any ring of anyblock of the multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s).Finally the inputs J4, K4, L4, and M4 are connected from any of theoutputs of any other stages of any ring of any block of the multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s).

The stage (ring “a”, stage “s”) consists of 8 inputs namely Ri(a,2 s+1),Ri(a,2 s+2), Ui(a,2 s+1), Ui(a,2 s+2), J5, K5, L5, and M5; and 4 outputsBo(a,2 s+1), Bo(a,2 s+2), Fo(a,2 s+1), and Fo(a,2 s+2). The stage (ring“a”, stage “s’) also consists of eight 2:1 Muxes namely R(a,2 s+1),R(a,2 s+2), F(a,2 s+1), F(a,2 s+2), U(a,2 s+1), U(a,2 s+2), B(a,2 s+1),and B(a,2 s+2). The 2:1 Mux R(a,2 s+1) has two inputs namely Ri(a,2 s+1)and J5, and has one output Ro(a,2 s+1). The 2:1 Mux R(a,2 s+2) has twoinputs namely Ri(a,2 s+2) and K5, and has one output Ro(a,2 s+2). The2:1 Mux F(a,2 s+1) has two inputs namely Ro(a,2 s+1) and Uo(a,2 s+2),and has one output Fo(a,2 s+1). The 2:1 Mux F(a,2 s+2) has two inputsnamely Ro(a,2 s+2) and Uo(a,2 s+1), and has one output Fo(a,2 s+2).

The 2:1 Mux U(a,2 s+1) has two inputs namely Ui(a,2 s+1) and L5, and hasone output Uo(a,2 s+1). The 2:1 Mux U(a,2 s+2) has two inputs namelyUi(a,2 s+2) and M5, and has one output Uo(a,2 s+2). The 2:1 Mux B(a,2s+1) has two inputs namely Uo(a,2 s+1) and Ro(a,2 s+2), and has oneoutput Bo(a,2 s+1). The 2:1 Mux B(a,2 s+2) has two inputs namely Uo(a,2s+2) and Ro(a,2 s+1), and has one output Bo(a,2 s+2).

The stage (ring “b”, stage “t”) consists of 8 inputs namely Ri(b,2 t+1),Ri(b,2 t+2), Ui(b,2 t+1), Ui(b,2 t+2), J6, K6, L6, and M6; and 4 outputsBo(b,2 t+1), Bo(b,2 t+2), Fo(b,2 t+1), and Fo(b,2 t+2). The stage (ring“b”, stage “t’) also consists of eight 2:1 Muxes namely R(b,2 t+1),R(b,2 t+2), F(b,2 t+1), F(b,2 t+2), U(b,2 t+1), U(b,2 t+2), B(b,2 t+1),and B(b,2 t+2). The 2:1 Mux R(b,2 t+1) has two inputs namely Ri(b,2 t+1)and J6, and has one output Ro(b,2 t+1). The 2:1 Mux R(b,2 t+2) has twoinputs namely Ri(b,2 t+2) and K6, and has one output Ro(b,2 t+2). The2:1 Mux F(b,2 t+1) has two inputs namely Ro(b,2 t+1) and Uo(b,2 t+2),and has one output Fo(b,2 t+1). The 2:1 Mux F(b,2 t+2) has two inputsnamely Ro(b,2 t+2) and Uo(b,2 t+1), and has one output Fo(b,2 t+2).

The 2:1 Mux U(b,2 t+1) has two inputs namely Ui(b,2 t+1) and L6, and hasone output Uo(b,2 t+1). The 2:1 Mux U(b,2 t+2) has two inputs namelyUi(b,2 t+2) and M6, and has one output Uo(b,2 t+2). The 2:1 Mux B(b,2t+1) has two inputs namely Uo(b,2 t+1) and Ro(b,2 t+2), and has oneoutput Bo(b,2 t+1). The 2:1 Mux B(b,2 t+2) has two inputs namely Uo(b,2t+2) and Ro(b,2 t+1), and has one output Bo(b,2 t+2).

The wire Hop(1,1) starting from the output Fo(x,2 p+2) of the stage(ring “x”, stage “p”) is also connected to L5 of the stage (ring “a”,stage “s”), in addition to the input Ri(y,2 q+4) of the stage (ring “y”,stage “q+1”). The stage (ring “x”, stage “p”), the stage (ring “a”,stage “s”), and the stage (ring “y”, stage “q+1”) may belong to threedifferent blocks of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s). Therefore the hop length between the blocksconsisting of the stage (ring “x”, stage “p”) and the stage (ring “a”,stage “s”) may not be equal to the hop length between the blocksconsisting of the stage (ring “x”, stage “p”) and the stage (ring “ ” “” y, stage q+1). For example the hop length between the blocksconsisting of the stage (ring “x”, stage “p”) and the stage (ring “a”,stage “s”) may be one where as the hop length between the blocksconsisting of the stage (ring “x”, stage “p”) and the stage (ring “q”,stage “y+1”) may be two. In such a case the wire Hop(1,1) is calledhereinafter a “multi-drop hop wire”. The wire Hop(1,1) may be eitherhorizontal hop wire or vertical hop wire. Also multi-drop hop wires areeither horizontal external hop wires or vertical external hop wires.Similarly the hop length between the blocks consisting of the stage(ring “x”, stage “p”) and the stage (ring “a”, stage “s”) may be anynumber greater than or equal to one, and also the hop length between theblocks consisting of the stage (ring “x”, stage “p”) and the stage (ring“ ” q, stage “y+1”) may be any number greater or equal to one.

In general a multi-drop hop wire may be dropping or terminating in morethan one different blocks of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s). For example a multi-drop hop wire starting from oneblock of the multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) may beterminating at three different blocks or four different blocks, etc.

The wire Hop(1,2) starting from the output Bo(x,2 p+4) of the stage(ring “x”, stage “p+1”) is also connected to J6 of the stage (ring “b”,stage “t”), in addition to the input Ui(y,2 q+2) of the stage (ring “y”,stage “q”). The wire Hop(1,2) is also an example of multi-drop hop wirewhen the stage (ring “x”, stage “p+1”), the stage (ring “b”, stage “t”)and the stage (ring “y”, stage “q”) belong to three different blocks ofthe multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s).

The wire Hop(2,1) starting from the output Fo(y,2 q+2) of the stage(ring “y”, stage “q”) is also connected to M5 of the stage (ring “a”,stage “s”), in addition to the input Ri(x,2 p+4) of the stage (ring “x”,stage “p+1”). The wire Hop(2,1) is also an example of multi-drop hopwire when the stage (ring “x”, stage “p+1”), the stage (ring “a”, stage“s”) and the stage (ring “y”, stage “q”) belong to three differentblocks of the multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s).

The wire Hop(2,2) starting from the output Bo(y,2 q+4) of the stage(ring “y”, stage “q+1”) is also connected to K6 of the stage (ring “b”,stage “t”), in addition to the input Ui(x,2 p+2) of the stage (ring “x”,stage “p”). The wire Hop(2,2) is also an example of multi-drop hop wirewhen the stage (ring “x”, stage “p”), the stage (ring “b”, stage “t”)and the stage (ring “y”, stage “q+1”) belong to three different blocksof the multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s).

In various embodiments, the inputs J5, K5, L5, and M5 are connected fromany of the multi-drop hop wires starting from any other stages of anyring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s). Also the inputs J6, K6, L6, and M6 are connectedfrom any of the multi-drop hop wires starting from any other stages ofany ring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

The diagram 600A of FIG. 6A and 600B of FIG. 6B are differentembodiments of all the connections with multi-drop hop wires, betweentwo arbitrary stages in two different rings of different blocks of2D-grid 800. Referring to diagram 600A in FIG. 6A illustrates all theconnections with multi-drop hop wires, between an arbitrary stage of aring namely the stages (ring “x”, stage “p”), and another arbitrarystage of any other ring namely the stages (ring “y”, stage “q”) of thecomplete multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s). Themulti-drop hop wires are also connected to another stage (ring “a”,stage “s”) belonging to a third block.

The stage (ring “x”, stage “p”) consists of 8 inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), Ui(x,2 p+2), J1, K1, L1, and M1; and 4 outputsBo(x,2 p+1), Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring“x”, stage “p’) also consists of eight 2:1 Muxes namely R(x,2 p+1),R(x,2 p+2), F(x,2 p+1), F(x,2 p+2), U(x,2 p+1), U(x,2 p+2), B(x,2 p+1),and B(x,2 p+2). The 2:1 Mux R(x,2 p+1) has two inputs namely Ri(x,2 p+1)and J1 and has one output Ro(x,2 p+1). The 2:1 Mux R(x,2 p+2) has twoinputs namely Ri(x,2 p+2) and K1 and has one output Ro(x,2 p+2). The 2:1Mux F(x,2 p+1) has two inputs namely Ro(x,2 p+1) and Uo(x,2 p+2) and hasone output Fo(x,2 p+1). The 2:1 Mux F(x,2 p+2) has two inputs namelyRo(x,2 p+2) and Uo(x,2 p+1) and has one output Fo(x,2 p+2).

The 2:1 Mux U(x,2 p+1) has two inputs namely Ui(x,2 p+1) and L1 and hasone output Uo(x,2 p+1). The 2:1 Mux U(x,2 p+2) has two inputs namelyUi(x,2 p+2) and M1 and has one output Uo(x,2 p+2). The 2:1 Mux B(x,2p+1) has two inputs namely Uo(x,2 p+1) and Ro(x,2 p+2) and has oneoutput Bo(x,2 p+1). The 2:1 Mux B(x,2 p+2) has two inputs namely Uo(x,2p+2) and Ro(x,2 p+1) and has one output Bo(x,2 p+2).

The stage (ring “y”, stage “q”) consists of 8 inputs namely Ri(y,2 q+1),Ri(y,2 q+2), Ui(y,2 q+1), Ui(y,2 q+2), J3, K3, L3, and M3; and 4 outputsBo(y,2 q+1), Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring“y”, stage “q’) also consists of eight 2:1 Muxes namely R(y,2 q+1),R(y,2 q+2), F(y,2 q+1), F(y,2 q+2), U(y,2 q+1), U(y,2 q+2), B(y,2 q+1),and B(y,2 q+2). The 2:1 Mux R(y,2 q+1) has two inputs namely Ri(y,2 q+1)and J3 and has one output Ro(y,2 q+1). The 2:1 Mux R(y,2 q+2) has twoinputs namely Ri(y,2 q+2) and K3 and has one output Ro(y,2 q+2). The 2:1Mux F(y,2 q+1) has two inputs namely Ro(y,2 q+1) and Uo(y,2 q+2) and hasone output Fo(y,2 q+1). The 2:1 Mux F(y,2 q+2) has two inputs namelyRo(y,2 q+2) and Uo(y,2 q+1) and has one output Fo(y,2 q+2).

The 2:1 Mux U(y,2 q+1) has two inputs namely Ui(y,2 q+1) and L3, and hasone output Uo(y,2 q+1). The 2:1 Mux U(y,2 q+2) has two inputs namelyUi(y,2 q+2) and M3, and has one output Uo(y,2 q+2). The 2:1 Mux B(y,2q+1) has two inputs namely Uo(y,2 q+1) and Ro(y,2 q+2) and has oneoutput Bo(y,2 q+1). The 2:1 Mux B(y,2 q+2) has two inputs namely Uo(y,2q+2) and Ro(y,2 q+1) and has one output Bo(y,2 q+2).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to the input Ri(y,2 q+2) of the stage (ring “y”,stage “q”). The output Bo(y,2 q+2) of the stage (ring “y”, stage “q”) isconnected via the wire Hop(1,2) to the input Ui(x,2 p+2) of the stage(ring “x”, stage “p”).

The wire Hop(1,1) starting from the output Fo(x,2 p+2) of the stage(ring “x”, stage “p”) is also connected to L2 of the stage (ring “a”,stage “s”), in addition to the input Ri(y,2 q+2) of the stage (ring “y”,stage “q”). The stage (ring “x”, stage “p”), the stage (ring “a”, stage“s”), and the stage (ring “y”, stage “q”) may belong to three differentblocks of the multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s).Therefore the hop length between the blocks consisting of the stage(ring “x”, stage “p”) and the stage (ring “a”, stage “s”) may not beequal to the hop length between the blocks consisting of the stage (ring“x”, stage “p”) and the stage (ring “ ” “y, stage q”). For example thehop length between the blocks consisting of the stage (ring “x”, stage“p”) and the stage (ring “a”, stage “s”) may be one where as the hoplength between the blocks consisting of the stage (ring “x”, stage “p”)and the stage (ring “q”, stage “y”) may be two. Hence the wire Hop(1,1)is a multi-drop hop wire. Also the wire Hop(1,1) is either horizontalexternal hop wire or vertical external hop wire. Similarly the hoplength between the blocks consisting of the stage (ring “x”, stage “p”)and the stage (ring “a”, stage “s”) may be any number greater than orequal to one, and also the hop length between the blocks consisting ofthe stage (ring “x”, stage “p”) and the stage (ring “q”, stage “y”) maybe any number greater or equal to one.

The wire Hop(1,2) starting from the output Bo(y,2 q+2) of the stage(ring “y”, stage “q”) is also connected to K2 of the stage (ring “a”,stage “s”), in addition to the input Ui(x,2 p+2) of the stage (ring “x”,stage “p”). The wire Hop(1,2) is also an example of multi-drop hop wirewhen the stage (ring “x”, stage “p”), the stage (ring “a”, stage “s”)and the stage (ring “y”, stage “q”) belong to three different blocks ofthe multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s).

In various embodiments, the inputs J2, K2, L2, and M2 are connected fromany of the multi-drop hop wires starting from any other stages of anyring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

Referring to diagram 600B in FIG. 6B illustrates all the connectionswith multi-drop hop wires, between an arbitrary stage of a ring namelythe stages (ring “x”, stage “p”), and another arbitrary stage of anyother ring namely the stages (ring “y”, stage “q”) of the completemulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s). The multi-drop hopwires are also connected to another stage (ring “a”, stage “s”)belonging to a third block.

The stage (ring “x”, stage “p”) consists of 8 inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), Ui(x,2 p+2), J1, K1, L1, and M1; and 4 outputsBo(x,2 p+1), Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring“x”, stage “p’) also consists of four 4:1 Muxes namely F(x,2 p+1), F(x,2p+2), B(x,2 p+1), and B(x,2 p+2). The 4:1 Mux F(x,2 p+1) has four inputsnamely Ri(x,2 p+1), Ri(x,2 p+2), Ui(x,2 p+2), and J1 and has one outputFo(x,2 p+1). The 4:1 Mux F(x,2 p+2) has four inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), and K1 and has one output Fo(x,2 p+2).

The 4:1 Mux B(x,2 p+1) has four inputs namely Ui(x,2 p+1), Ui(x,2 p+2),Ri(x,2 p+2), and L1 and has one output Bo(x,2 p+1). The 2:1 Mux B(x,2p+2) has two inputs namely Ui(x,2 p+1), Ui(x,2 p+2), Ri(x,2 p+1), and M1and has one output Bo(x,2 p+2).

The stage (ring “y”, stage “q”) consists of 8 inputs namely Ri(y,2 q+1),Ri(y,2 q+2), Ui(y,2 q+1), Ui(y,2 q+2), J3, K3, L3, and M3; and 4 outputsBo(y,2 q+1), Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring“y”, stage “q’) also consists of four 4:1 Muxes namely F(y,2 q+1), F(y,2q+2), B(y,2 q+1), and B(y,2 q+2). The 4:1 Mux F(y,2 q+1) has four inputsnamely Ri(y,2 q+1), Ri(y,2 q+2), Ui(y,2 q+2), and J3 and has one outputFo(y,2 q+1). The 4:1 Mux F(y,2 q+2) has four inputs namely Ri(y,2 q+1),Ri(y,2 q+2), Ui(y,2 q+1), and K3 and has one output Fo(y,2 q+2).

The 4:1 Mux B(y,2 q+1) has four inputs namely Ui(y,2 q+1), Ui(y,2 q+2),Ri(y,2 q+2), and L3, and has one output Bo(y,2 q+1). The 4:1 Mux B(y,2q+2) has four inputs namely Ui(y,2 q+1), Ui(y,2 q+2), Ri(y,2 q+1), andM3, and has one output Bo(y,2 q+2).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to the input Ri(y,2 q+2) of the stage (ring “y”,stage “q”). The output Bo(y,2 q+2) of the stage (ring “y”, stage “q”) isconnected via the wire Hop(1,2) to the input Ui(x,2 p+2) of the stage(ring “x”, stage “p”).

The wire Hop(1,1) starting from the output Fo(x,2 p+2) of the stage(ring “x”, stage “p”) is also connected to L2 and J2 of the stage (ring“a”, stage “s”), in addition to the input Ri(y,2 q+2) of the stage (ring“y”, stage “q”). The stage (ring “x”, stage “p”), the stage (ring “a”,stage “s”), and the stage (ring “y”, stage “q”) may belong to threedifferent blocks of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s). Therefore the hop length between the blocksconsisting of the stage (ring “x”, stage “p”) and the stage (ring “a”,stage “s”) may not be equal to the hop length between the blocksconsisting of the stage (ring “x”, stage “p”) and the stage (ring “ ”“y, stage q”). For example the hop length between the blocks consistingof the stage (ring “x”, stage “p”) and the stage (ring “a”, stage “s”)may be one where as the hop length between the blocks consisting of thestage (ring “x”, stage “p”) and the stage (ring “q”, stage “y”) may betwo. Hence the wire Hop(1,1) is a multi-drop hop wire. Also the wireHop(1,1) is either horizontal external hop wire or vertical external hopwire. Similarly the hop length between the blocks consisting of thestage (ring “x”, stage “p”) and the stage (ring “a”, stage “s”) may beany number greater than or equal to one, and also the hop length betweenthe blocks consisting of the stage (ring “x”, stage “p”) and the stage(ring “q”, stage “y”) may be any number greater or equal to one.

The wire Hop(1,2) starting from the output Bo(y,2 q+2) of the stage(ring “y”, stage “q”) is also connected to K2 and M2 of the stage (ring“a”, stage “s”), in addition to the input Ui(x,2 p+2) of the stage (ring“x”, stage “p”). The wire Hop(1,2) is also an example of multi-drop hopwire when the stage (ring “x”, stage “p”), the stage (ring “a”, stage“s”) and the stage (ring “y”, stage “q”) belong to three differentblocks of the multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s).

In various embodiments, the inputs J2, K2, L2, and M2 are connected fromany of the multi-drop hop wires starting from any other stages of anyring of any block of the multi-stage hierarchical networkV_(Comb)(N₁,N₂,d,s).

Referring to diagram 700A in FIG. 7A, illustrates, in one embodiment,the hop wire connections chart of a partial multi-stage hierarchicalnetwork V_(Comb)(N₁,N₂,d,s) 100A or a partial multi-stage hierarchicalnetwork V_(Comb)(N₁,N₂,d,s) 100B, or a partial multi-stage hierarchicalnetwork V_(Comb)(N₁,N₂,d,s) 100C, with m=6 and n=7. The hop wireconnections chart shows two rings namely ring 1 and ring 2. And thereare m+1=7 stages in ring 1 and n+1=8 stages in ring 2.

The hop wire connections chart 700A illustrates how the hop wires areconnected between any two successive stages of all the ringscorresponding to a block of 2D-grid 800. “Lx” denotes an internal hopwire connection, where symbol “L” denotes internal hop wire and “x” isan integer. For example “L1” between the stages (ring 1, stage 0) and(ring 1, stage 1) denotes that the corresponding hop wires Hop(1,1),Hop(1,2), Hop(2,1), and Hop(2,2) are connected to two successive stagesof another ring in the same block or alternatively hop wires Hop(1,1),Hop(1,2), Hop(2,1), and Hop(2,2) are internal hop wires. Since there isalso “L1” between the stages (ring 2, stage 0) and (ring 2, stage 1),there are internal hop wire connections Hop(1,1), Hop(1,2), Hop(2,1),and Hop(2,2) connected between the stages (ring 1, stage 0) and (ring 1,stage 1) and the stages (ring 2, stage 0) and (ring 2, stage 1). Hencethere can be only two “L1” labels in the hop wire connection chart 700A.

Similarly there are two “L2” labels in the hop wire connections chart700A. Since the label “L2” is given between the stages (ring 1, stage 5)and (ring 1, stage 6) and also the label “L2” is given between thestages (ring 2, stage 3) and (ring 2, stage 4), there are correspondinginternal hop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2)connected between the stages (ring 1, stage 5) and (ring 1, stage 6) andthe stages (ring 2, stage 3) and (ring 2, stage 4).

“Vx” denotes an external vertical hop wire, where symbol “V” denotesvertical external hop wire connections from blocks of the topmost row of2D-grid 800 (i.e., row of blocks consisting of block (1,1), block (1,2),. . . , and block (1,10)) to the same corresponding stages of the samenumbered ring of another block that is directly down south, with “x”vertical hop length, where “x” is a positive integer. For example “V1”between the stages (ring 1, stage 1) and (ring 1, stage 2) denote thatfrom block (1,1) of 2D-grid 800 to another block directly below it,which is block (2,1), since “V1” denotes hop length of 1, there areexternal hop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2)from (ring 1, stage 1) and (ring 1, stage 2) of block (1,1) to (ring 1,stage 1) and (ring 1, stage 2) of block (2,1). It also means there areexternal hop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2)from (ring 1, stage 1) and (ring 1, stage 2) of block (3,1) to (ring 1,stage 1) and (ring 1, stage 2) of block (4,1). This pattern continuesand finally there are external hop wire connections Hop(1,1), Hop(1,2),Hop(2,1), and Hop(2,2) from (ring 1, stage 1) and (ring 1, stage 2) ofblock (9,1) to (ring 1, stage 1) and (ring 1, stage 2) of block (10,1).The same pattern continues for all the columns starting from the blockin the topmost row of each column.

Similarly “V3” between the stages (ring 2, stage 1) and (ring 2, stage2) denote that from block (1,1) of 2D-grid 800 to another block below itand at a hop length of 3 which is block (4,1), there are external hopwire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) from (ring2, stage 1) and (ring 2, stage 2) of block (1,1) to (ring 2, stage 1)and (ring 2, stage 2) of block (4,1). It also means there are externalhop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) from(ring 2, stage 1) and (ring 2, stage 2) of block (2,1) to (ring 2, stage1) and (ring 2, stage 2) of block (5,1). This pattern continues andfinally there are external hop wire connections Hop(1,1), Hop(1,2),Hop(2,1), and Hop(2,2) from (ring 2, stage 1) and (ring 2, stage 2) ofblock (7,1) to (ring 2, stage 1) and (ring 2, stage 2) of block (10,1).The same pattern continues for all the columns starting from the blockin the topmost row of each column.

If there is no block that is directly below a block with hop lengthequal to 3 then there is no vertical external hop wire connections isgiven corresponding to those two successive stages of the blocks. Forexample block (8,1) does not have any block that is directly below andwith hop length equal to 3 then none of the vertical external hop wiresare connected from (ring 2, stage 1) and (ring 2, stage 2) of block(8,1). Similarly from (ring 2, stage 1) and (ring 2, stage 2) of block(9,1) and from (ring 2, stage 1) and (ring 2, stage 2) of block (10,1),none of the vertical external hop wires are connected. Similarlyvertical external hop wires are connected corresponding to “V5”, “V7”etc., labels given in the hop wire connections chart 700A.

“Ux” denotes an external vertical hop wire, where symbol “U” denotesvertical external hop wire connections starting from blocks that are “x”hop length below the topmost row of 2D-grid 800 (i.e., row of blocksconsisting of block (1+x,1), block (1+x,2), . . . , and block (1+x,10))to the same corresponding stages of the same numbered ring of anotherblock that is directly down below, with “x” vertical hop length, where“x” is a positive integer. For example “U1” between the stages (ring 1,stage 2) and (ring 1, stage 3) denote that from block (2,1) of 2D-grid800 to another block directly below it, which is block (3,1), since “U1”denotes hop length of 1, there are external hop wire connectionsHop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) from (ring 1, stage 2) and(ring 1, stage 3) of block (2,1) to (ring 1, stage 2) and (ring 1, stage3) of block (3,1). It also means there are external hop wire connectionsHop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) from (ring 1, stage 2) and(ring 1, stage 3) of block (4,1) to (ring 1, stage 2) and (ring 1, stage3) of block (5,1). This pattern continues and finally there are externalhop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) from(ring 1, stage 2) and (ring 1, stage 3) of block (8,1) to (ring 1, stage2) and (ring 1, stage 3) of block (9,1). The same pattern continues forall the columns starting from the block in the topmost row of eachcolumn.

If there is no block that is directly below a block with hop lengthequal to 1 then no vertical external hop wire connections is givencorresponding to those two successive stages of the blocks. For exampleblock (10,1) does not have any block that is directly below and with hoplength equal to 1 then none of the vertical external hop wires areconnected from (ring 1, stage 2) and (ring 1, stage 3) of block (10,1).Similarly for all the blocks in each column from the topmost row up tothe row “x”, no vertical external hop wires are connected to thecorresponding (ring 1, stage 2) and (ring 1, stage 3).

Similarly “U3” between the stages (ring 2, stage 2) and (ring 2, stage3) denote that starting from blocks that are 3 hop length below thetopmost row of 2D-grid 800 (i.e., row of blocks consisting of block(4,1), block (4,2), . . . , and block (4,10)) to the same correspondingstages of the same numbered ring of another block that is directly downbelow, with vertical hop length of 3, there are external hop wireconnections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) connected. Forexample from block (4,1) of 2D-grid 800 to another block below it and ata hop length of 3 which is block (7,1), there are external hop wireconnections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) from (ring 2,stage 2) and (ring 2, stage 3) of block (4,1) to (ring 2, stage 1) and(ring 2, stage 2) of block (7,1). It also means there are external hopwire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) from (ring2, stage 2) and (ring 2, stage 3) of block (5,1) to (ring 2, stage 2)and (ring 2, stage 3) of block (8,1). This pattern continues and finallythere are external hop wire connections Hop(1,1), Hop(1,2), Hop(2,1),and Hop(2,2) from (ring 2, stage 2) and (ring 2, stage 3) of block (7,1)to (ring 2, stage 2) and (ring 2, stage 3) of block (10,1). The samepattern continues for all the columns starting from the block in thetopmost row of each column.

If there is no block that is directly below a block with hop lengthequal to 3 then no vertical external hop wire connections is givencorresponding to those two successive stages of the blocks. For exampleblock (8,1) does not have any block that is directly below and with hoplength equal to 3 then none of the vertical external hop wires areconnected from (ring 2, stage 2) and (ring 2, stage 3) of block (8,1).Similarly from (ring 2, stage 2) and (ring 2, stage 3) of block (9,1)and from (ring 2, stage 2) and (ring 2, stage 3) of block (10,1), noneof the vertical external hop wires are connected. Similarly verticalexternal hop wires are connected corresponding to “U5”, “U7” etc. labelsgiven in the hop wire connections chart 700A.

“Hx” denotes an external horizontal hop wire, where symbol “H” denoteshorizontal external hop wire connections from blocks of the leftmostcolumn of 2D-grid 800 (i.e., column of blocks consisting of block (1,1),block (2,1), . . . , and block (10,1)) to the same corresponding stagesof the same numbered ring of another block that is directly to theright, with “x” horizontal hop length, where “x” is a positive integer.For example “H1” between the stages (ring 1, stage 3) and (ring 1, stage4) denote that from block (1,1) of 2D-grid 800 to another block directlyto the right, which is block (1,2), since “H1” denotes hop length of 1,there are external hop wire connections Hop(1,1), Hop(1,2), Hop(2,1),and Hop(2,2) from (ring 1, stage 3) and (ring 1, stage 4) of block (1,1)to (ring 1, stage 3) and (ring 1, stage 4) of block (1,2). It also meansthere are external hop wire connections Hop(1,1), Hop(1,2), Hop(2,1),and Hop(2,2) from (ring 1, stage 3) and (ring 1, stage 4) of block (1,3)to (ring 1, stage 3) and (ring 1, stage 4) of block (1,4). This patterncontinues and finally there are external hop wire connections Hop(1,1),Hop(1,2), Hop(2,1), and Hop(2,2) from (ring 1, stage 3) and (ring 1,stage 4) of block (9,1) to (ring 1, stage 3) and (ring 1, stage 4) ofblock (10,1). The same pattern continues for all the rows starting fromthe block in the leftmost block of each row.

Similarly “H3” between the stages (ring 2, stage 4) and (ring 2, stage5) denote that from block (1,1) of 2D-grid 800 to another block to theright and at a hop length of 3 which is block (1,4), there are externalhop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) from(ring 2, stage 4) and (ring 2, stage 5) of block (1,1) to (ring 2, stage4) and (ring 2, stage 5) of block (1,4). It also means there areexternal hop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2)from (ring 2, stage 4) and (ring 2, stage 5) of block (1,2) to (ring 2,stage 4) and (ring 2, stage 5) of block (1,5). This pattern continuesand finally there are external hop wire connections Hop(1,1), Hop(1,2),Hop(2,1), and Hop(2,2) from (ring 2, stage 4) and (ring 2, stage 5) ofblock (1,7) to (ring 2, stage 4) and (ring 2, stage 5) of block (1,10).The same pattern continues for all the columns starting from the blockin the leftmost column of each row.

If there is no block that is directly to the right with hop length equalto 3 then there is no horizontal external hop wire connections is givencorresponding to those two successive stages of the blocks. For exampleblock (1,8) does not have any block that is directly to the right andwith hop length equal to 3 then none of the horizontal external hopwires are connected from (ring 2, stage 4) and (ring 2, stage 5) ofblock (1,8). Similarly from (ring 2, stage 4) and (ring 2, stage 5) ofblock (1,9) and from (ring 2, stage 4) and (ring 2, stage 5) of block(1,10), none of the horizontal external hop wires are connected.Similarly horizontal external hop wires are connected corresponding to“H5”, “H7” etc., labels given in the hop wire connections chart 700A.

“Kx” denotes an external horizontal hop wire, where symbol “K” denoteshorizontal external hop wire connections starting from blocks that are“x” hop length below the leftmost column of 2D-grid 800 (i.e., column ofblocks consisting of block (1, 1+x), block (2, 1+x), . . . , and block(10, 1+x)) to the same corresponding stages of the same numbered ring ofanother block that is directly to the right, with “x” horizontal hoplength, where “x” is a positive integer. For example “K1” between thestages (ring 1, stage 4) and (ring 1, stage 5) denote that from block(1,2) of 2D-grid 800 to another block directly to the right, which isblock (1,3), since “K1” denotes hop length of 1, there are external hopwire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) from (ring1, stage 4) and (ring 1, stage 5) of block (1,2) to (ring 1, stage 4)and (ring 1, stage 5) of block (1,3). It also means there are externalhop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2) from(ring 1, stage 4) and (ring 1, stage 4) of block (1,4) to (ring 1, stage4) and (ring 1, stage 5) of block (1,5). This pattern continues andfinally there are external hop wire connections Hop(1,1), Hop(1,2),Hop(2,1), and Hop(2,2) from (ring 1, stage 4) and (ring 1, stage 5) ofblock (1,8) to (ring 1, stage 4) and (ring 1, stage 5) of block (1,9).The same pattern continues for all the rows starting from the block inthe leftmost column of each row.

If there is no block that is directly to the right of a block with hoplength equal to 1 then no horizontal external hop wire connections isgiven corresponding to those two successive stages of the blocks. Forexample block (1,10) does not have any block that is directly to theright and with hop length equal to 1 then none of the horizontalexternal hop wires are connected from (ring 1, stage 4) and (ring 1,stage 5) of block (1,10). Similarly for all the blocks in each row fromthe leftmost column up to the column “x”, no horizontal external hopwires are connected to the corresponding (ring 1, stage 4) and (ring 1,stage 5).

Similarly “K3” between the stages (ring 2, stage 5) and (ring 2, stage6) denote that starting from blocks that are 3 hop length to the rightof the leftmost column of 2D-grid 800 (i.e., column of blocks consistingof block (1,4), block (2,4), . . . , and block (10,4)) to the samecorresponding stages of the same numbered ring of another block that isdirectly to the right, with horizontal hop length of 3, there areexternal hop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2)connected. For example from block (1,4) of 2D-grid 800 to another blockto the right and at a hop length of 3 which is block (1,7), there areexternal hop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2)from (ring 2, stage 5) and (ring 2, stage 6) of block (1,4) to (ring 2,stage 5) and (ring 2, stage 6) of block (1,7). It also means there areexternal hop wire connections Hop(1,1), Hop(1,2), Hop(2,1), and Hop(2,2)from (ring 2, stage 5) and (ring 2, stage 6) of block (1,5) to (ring 2,stage 5) and (ring 2, stage 6) of block (1,8). This pattern continuesand finally there are external hop wire connections Hop(1,1), Hop(1,2),Hop(2,1), and Hop(2,2) from (ring 2, stage 5) and (ring 2, stage 6) ofblock (1,7) to (ring 2, stage 5) and (ring 2, stage 6) of block (1,10).The same pattern continues for all the rows starting from the block inthe leftmost block of each row.

If there is no block that is directly to the right of a block with hoplength equal to 3 then no horizontal external hop wire connections isgiven corresponding to those two successive stages of the blocks. Forexample block (1,8) does not have any block that is directly to theright and with hop length equal to 3 then none of the horizontalexternal hop wires are connected from (ring 2, stage 5) and (ring 2,stage 6) of block (1,8). Similarly from (ring 2, stage 5) and (ring 2,stage 6) of block (1,9) and from (ring 2, stage 5) and (ring 2, stage 6)of block (1,10), none of the horizontal external hop wires areconnected. Similarly horizontal external hop wires are connectedcorresponding to “K5”, “K7” etc. labels given in the hop wireconnections chart 700A.

In general the hop length of an external vertical hop wire can be anypositive number. Similarly the hop length of an external horizontal hopwire can be any positive number. The hop wire connections between twoarbitrary successive stages in two different rings of the same block ortwo different rings of different blocks described in diagram 700A ofFIG. 7A may be any one of the embodiments of either the diagrams 300A ofFIG. 3A, 300B of FIG. 3B, 300C of FIG. 3C, 300D of FIG. 3D, and 300E ofFIG. 3E. Similarly the multi-drop hop wire connections between twoarbitrary successive stages in two different rings of different blocksdescribed in diagram 700A of FIG. 7A may be any one of the embodimentsof either the diagrams 500A of FIG. 5A.

In accordance with the invention, the hop wire connections between twoarbitrary stages in two different rings of the same block or twodifferent rings of different blocks may also be any one of theembodiments of either the diagrams 400A of FIG. 4A and 400B of FIG. 4B.Similarly the multi-drop hop wire connections between two arbitrarystages in two different rings of different blocks may also be any one ofthe embodiments of either the diagrams 600A of FIG. 6A or 600B of FIG.6B.

In accordance with the current invention, either partial multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) 100A of FIG. 1A or partialmulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100B of FIG. 1B, orpartial multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) 100C ofFIG. 1C, corresponding to a block of 2D-grid of blocks 800 of FIG. 8,using any one of the embodiments of 200A-200E of FIGS. 2A-2E toimplement a stage of a ring of the multi-stage hierarchical network,either by using the hop wire connections or multi-drop hop wireconnections between two arbitrary stages in two different rings of thesame block or two different rings of different blocks described indiagram 700A of FIG. 7A may be any one of the embodiments of either thediagrams 300A of FIG. 3A, 300B of FIG. 3B, 300C of FIG. 3C, 300D of FIG.3D, 300E of FIG. 3E, 500A of FIG. 5A, or by using the hop wireconnections or multi-drop hop wire connections between two arbitrarystages in two different rings of the same block or two different ringsof different blocks may be any one of the embodiments of either thediagrams 400A of FIG. 4A, 400B of FIG. 4B, 600A of FIG. 6A, or 600B ofFIG. 6B is very efficient in the reduction of the die size, powerconsumption, and for lower wire/path delay for higher performance forpractical routing applications to particularly to set up broadcast,unicast and multicast connections. In general in accordance with thecurrent invention, where N₁ and N₂ of the complete multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) may be arbitrarily large insize and also the 2D-grid size 800 may also be arbitrarily large in sizein terms of both the number of rows and number of columns.

Delay Optimizations in Multi-Stage Hierarchical NetworkV_(D-Comb)(N₁,N₂,d,s):

The multi-stage hierarchical network V_(Comb)(N₁,N₂,d,s) according tothe current invention can further be optimized to reduce the delay inthe routed path of the connection. The delay optimized multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) is hereinafter denoted byV_(D-Comb)(N₁,N₂,d,s). The delay optimizing embodiments of the stages ofa ring are one of the diagrams namely 900A-900E of FIGS. 9A-9D,1000A-1000F of FIGS. 10A-10F, and 1100A-1100C of FIGS. 11A-11C. Thediagram 1200 of FIG. 12, 1300 of FIG. 13, 1400 of FIG. 14, and 1500 ofFIG. 15 are different embodiments for the implementation of delayoptimizations with all the connections between two arbitrary successivestages in two different rings of the same block or two different ringsof different blocks of 2D-grid 800.

FIG. 9A illustrates a stage (ring “k”, stage “m”) 900A consists of 5inputs namely Fi(k,2 m+1), Fi(k,2 m+2), YFi(k,2 m+1), Ui(k,2 m+1), andUi(k,2 m+2); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), andFo(k,2 m+2). The stage (ring “k”, stage “m”) also consists of seven 2:1Muxes namely YF(k,2 m+1), F(k,2 m+1), F(k,2 m+2), U(k,2 m+1), U(k,2m+2), B(k,2 m+1), and B(k,2 m+2). The 2:1 Mux YF(k,2 m+1) has two inputsnamely Fi(k,2 m+1) and YFi(k,2 m+1) and has one output YFo(k,2 m+1). The2:1 Mux F(k,2 m+1) has two inputs namely YFo(k,2 m+1) and Fi(k,2 m+2)and has one output Fo(k,2 m+1). The 2:1 Mux F(k,2 m+2) has two inputsnamely YFo(k,2 m+1) and Fi(k,2 m+2) and has one output Fo(k,2 m+2).

The 2:1 Mux U(k,2 m+1) has two inputs namely Ui(k,2 m+1) and Fo(k,2 m+1)and has one output Uo(k,2 m+1). The 2:1 Mux U(k,2 m+2) has two inputsnamely Ui(k,2 m+2) and Fo(k,2 m+2) and has one output Uo(k,2 m+2). The2:1 Mux B(k,2 m+1) has two inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) andhas one output Bo(k,2 m+1). The 2:1 Mux B(k,2 m+2) has two inputs namelyUo(k,2 m+1) and Uo(k,2 m+2) and has one output Bo(k,2 m+2).

FIG. 9B illustrates a stage (ring “k”, stage “m”) 900B consists of 5inputs namely Fi(k,2 m+1), Fi(k,2 m+2), YUi(k,2 m+1), Ui(k,2 m+1), andUi(k,2 m+2); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), andFo(k,2 m+2). The stage (ring “k”, stage “m”) also consists of seven 2:1Muxes namely F(k,2 m+1), F(k,2 m+2), YF(k,2 m+1), U(k,2 m+1), U(k,2m+2), B(k,2 m+1), and B(k,2 m+2). The 2:1 Mux F(k,2 m+1) has two inputsnamely Fi(k,2 m+1) and Fi(k,2 m+2) and has one output Fo(k,2 m+1). The2:1 Mux F(k,2 m+2) has two inputs namely Fi(k,2 m+1) and Fi(k,2 m+2) andhas one output Fo(k,2 m+2).

The 2:1 Mux YU(k,2 m+1) has two inputs namely Ui(k,2 m+1) and YUi(k,2m+1) and has one output YUo(k,2 m+1). The 2:1 Mux U(k,2 m+1) has twoinputs namely YUo(k,2 m+1) and Fo(k,2 m+1) and has one output Uo(k,2m+1). The 2:1 Mux U(k,2 m+2) has two inputs namely Ui(k,2 m+2) andFo(k,2 m+2) and has one output Uo(k,2 m+2). The 2:1 Mux B(k,2 m+1) hastwo inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) and has one output Bo(k,2m+1). The 2:1 Mux B(k,2 m+2) has two inputs namely Uo(k,2 m+1) andUo(k,2 m+2) and has one output Bo(k,2 m+2).

FIG. 9C illustrates a stage (ring “k”, stage “m”) 900C consists of 5inputs namely Fi(k,2 m+1), Fi(k,2 m+2), UYi(k,2 m+1), Ui(k,2 m+1), andUi(k,2 m+2); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), andFo(k,2 m+2). The stage (ring “k”, stage “m”) also consists of five 2:1Muxes namely F(k,2 m+1), F(k,2 m+2), U(k,2 m+2), B(k,2 m+1), and B(k,2m+2). The stage (ring “k”, stage “m”) also consists of one 3:1 Muxnamely UY(k,2 m+1). The 2:1 Mux F(k,2 m+1) has two inputs namely Fi(k,2m+1) and Fi(k,2 m+2) and has one output Fo(k,2 m+1). The 2:1 Mux F(k,2m+2) has two inputs namely Fi(k,2 m+1) and Fi(k,2 m+2) and has oneoutput Fo(k,2 m+2).

The 3:1 Mux UY(k,2 m+1) has three inputs namely Ui(k,2 m+1), UYi(k,2m+1) and Fo(k,2 m+1) and has one output UYo(k,2 m+1). The 2:1 Mux U(k,2m+2) has two inputs namely Ui(k,2 m+2) and Fo(k,2 m+2) and has oneoutput Uo(k,2 m+2). The 2:1 Mux B(k,2 m+1) has two inputs namely UYo(k,2m+1) and Uo(k,2 m+2) and has one output Bo(k,2 m+1). The 2:1 Mux B(k,2m+2) has two inputs namely UYo(k,2 m+1) and Uo(k,2 m+2) and has oneoutput Bo(k,2 m+2).

FIG. 9D illustrates a stage (ring “k”, stage “m”) 900D consists of 6inputs namely Fi(k,2 m+1), Fi(k,2 m+2), YFi(k,2 m+1), Ui(k,2 m+1),Ui(k,2 m+2), and YUi(k,2 m+1); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2),Fo(k,2 m+1), and Fo(k,2 m+2). The stage (ring “k”, stage “m”) alsoconsists of eight 2:1 Muxes namely F(k,2 m+1), F(k,2 m+2), YF(k,2 m+1),U(k,2 m+1), U(k,2 m+2), YU(k,2 m+1), B(k,2 m+1), and B(k,2 m+2). The 2:1Mux YF(k,2 m+1) has two inputs namely Fi(k,2 m+1) and YFi(k,2 m+1) andhas one output YFo(k,2 m+1). The 2:1 Mux F(k,2 m+1) has two inputsnamely YFo(k,2 m+1) and Fi(k,2 m+2) and has one output Fo(k,2 m+1). The2:1 Mux F(k,2 m+2) has two inputs namely YFo(k,2 m+1) and Fi(k,2 m+2)and has one output Fo(k,2 m+2).

The 2:1 Mux YU(k,2 m+1) has two inputs namely Ui(k,2 m+1) and YUi(k,2m+1) and has one output YUo(k,2 m+1). The 2:1 Mux U(k,2 m+1) has twoinputs namely YUo(k,2 m+1) and Fo(k,2 m+1) and has one output Uo(k,2m+1). The 2:1 Mux U(k,2 m+2) has two inputs namely Ui(k,2 m+2) andFo(k,2 m+2) and has one output Uo(k,2 m+2). The 2:1 Mux B(k,2 m+1) hastwo inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) and has one output Bo(k,2m+1). The 2:1 Mux B(k,2 m+2) has two inputs namely Uo(k,2 m+1) andUo(k,2 m+2) and has one output Bo(k,2 m+2).

FIG. 9E illustrates a stage (ring “k”, stage “m”) 900E consists of 6inputs namely Fi(k,2 m+1), Fi(k,2 m+2), YFi(k,2 m+1), Ui(k,2 m+1),Ui(k,2 m+2), and UYi(k,2 m+1); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2),Fo(k,2 m+1), and Fo(k,2 m+2). The stage (ring “k”, stage “m”) alsoconsists of six 2:1 Muxes namely F(k,2 m+1), F(k,2 m+2), YF(k,2 m+1),U(k,2 m+2), B(k,2 m+1), and B(k,2 m+2). The stage (ring “k”, stage “m”)also consists of one 3:1 Mux namely UY(k,2 m+1). The 2:1 Mux YF(k,2 m+1)has two inputs namely Fi(k,2 m+1) and YFi(k,2 m+1) and has one outputYFo(k,2 m+1). The 2:1 Mux F(k,2 m+1) has two inputs namely YFo(k,2 m+1)and Fi(k,2 m+2) and has one output Fo(k,2 m+1). The 2:1 Mux F(k,2 m+2)has two inputs namely YFo(k,2 m+1) and Fi(k,2 m+2) and has one outputFo(k,2 m+2).

The 3:1 Mux UY(k,2 m+1) has three inputs namely Ui(k,2 m+1), UYi(k,2m+1) and Fo(k,2 m+1) and has one output UYo(k,2 m+1). The 2:1 Mux U(k,2m+2) has two inputs namely Ui(k,2 m+2) and Fo(k,2 m+2) and has oneoutput Uo(k,2 m+2). The 2:1 Mux B(k,2 m+1) has two inputs namely UYo(k,2m+1) and Uo(k,2 m+2) and has one output Bo(k,2 m+1). The 2:1 Mux B(k,2m+2) has two inputs namely UYo(k,2 m+1) and Uo(k,2 m+2) and has oneoutput Bo(k,2 m+2).

FIG. 10A illustrates a stage (ring “k”, stage “m”) 1000A consists of 5inputs namely Ri(k,2 m+1), Ri(k,2 m+2), YRi(k,2 m+1), Ui(k,2 m+1), andUi(k,2 m+2); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), andFo(k,2 m+2). The stage (ring “k”, stage “m”) also consists of nine 2:1Muxes namely R(k,2 m+1), R(k,2 m+2), YR(k,2 m+1), F(k,2 m+1), F(k,2m+2), U(k,2 m+1), U(k,2 m+2), B(k,2 m+1), and B(k,2 m+2). The 2:1 MuxYR(k,2 m+1) has two inputs namely Ri(k,2 m+1) and YRi(k,2 m+1) and hasone output YRo(k,2 m+1). The 2:1 Mux R(k,2 m+1) has two inputs namelyYRo(k,2 m+1) and Bo(k,2 m+1) and has one output Ro(k,2 m+1). The 2:1 MuxR(k,2 m+2) has two inputs namely Ri(k,2 m+2) and Bo(k,2 m+2) and has oneoutput Ro(k,2 m+2). The 2:1 Mux F(k,2 m+1) has two inputs namely Ro(k,2m+1) and Ro(k,2 m+2) and has one output Fo(k,2 m+1). The 2:1 Mux F(k,2m+2) has two inputs namely Ro(k,2 m+1) and Ro(k,2 m+2) and has oneoutput Fo(k,2 m+2).

The 2:1 Mux U(k,2 m+1) has two inputs namely Ui(k,2 m+1) and Fo(k,2 m+1)and has one output Uo(k,2 m+1). The 2:1 Mux U(k,2 m+2) has two inputsnamely Ui(k,2 m+2) and Fo(k,2 m+2) and has one output Uo(k,2 m+2). The2:1 Mux B(k,2 m+1) has two inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) andhas one output Bo(k,2 m+1). The 2:1 Mux B(k,2 m+2) has two inputs namelyUo(k,2 m+1) and Uo(k,2 m+2) and has one output Bo(k,2 m+2).

FIG. 10B illustrates a stage (ring “k”, stage “m”) 1000B consists of 5inputs namely Ri(k,2 m+1), Ri(k,2 m+2), RYi(k,2 m+1), Ui(k,2 m+1), andUi(k,2 m+2); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), andFo(k,2 m+2). The stage (ring “k”, stage “m”) also consists of seven 2:1Muxes namely R(k,2 m+2), F(k,2 m+1), F(k,2 m+2), U(k,2 m+1), U(k,2 m+2),B(k,2 m+1), and B(k,2 m+2). The stage (ring “k”, stage “m”) alsoconsists of one 3:1 Mux namely RY(k,2 m+1). The 3:1 Mux RY(k,2 m+1) hasthree inputs namely Ri(k,2 m+1), RYi(k,2 m+1), and Bo(k,2 m+1), and hasone output RYo(k,2 m+1). The 2:1 Mux R(k,2 m+2) has two inputs namelyRi(k,2 m+2) and Bo(k,2 m+2) and has one output Ro(k,2 m+2). The 2:1 MuxF(k,2 m+1) has two inputs namely RYo(k,2 m+1) and Ro(k,2 m+2) and hasone output Fo(k,2 m+1). The 2:1 Mux F(k,2 m+2) has two inputs namelyRYo(k,2 m+1) and Ro(k,2 m+2) and has one output Fo(k,2 m+2).

The 2:1 Mux U(k,2 m+1) has two inputs namely Ui(k,2 m+1) and Fo(k,2 m+1)and has one output Uo(k,2 m+1). The 2:1 Mux U(k,2 m+2) has two inputsnamely Ui(k,2 m+2) and Fo(k,2 m+2) and has one output Uo(k,2 m+2). The2:1 Mux B(k,2 m+1) has two inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) andhas one output Bo(k,2 m+1). The 2:1 Mux B(k,2 m+2) has two inputs namelyUo(k,2 m+1) and Uo(k,2 m+2) and has one output Bo(k,2 m+2).

FIG. 10C illustrates a stage (ring “k”, stage “m”) 1000C consists of 5inputs namely Ri(k,2 m+1), Ri(k,2 m+2), Ui(k,2 m+1), Ui(k,2 m+2), andYUi(k,2 m+1); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), andFo(k,2 m+2). The stage (ring “k”, stage “m”) also consists of nine 2:1Muxes namely R(k,2 m+1), R(k,2 m+2), F(k,2 m+1), F(k,2 m+2), YU(k,2m+1), U(k,2 m+1), U(k,2 m+2), B(k,2 m+1), and B(k,2 m+2). The 2:1 MuxR(k,2 m+1) has two inputs namely Ri(k,2 m+1) and Bo(k,2 m+1) and has oneoutput Ro(k,2 m+1). The 2:1 Mux R(k,2 m+2) has two inputs namely Ri(k,2m+2) and Bo(k,2 m+2) and has one output Ro(k,2 m+2). The 2:1 Mux F(k,2m+1) has two inputs namely Ro(k,2 m+1) and Ro(k,2 m+2) and has oneoutput Fo(k,2 m+1). The 2:1 Mux F(k,2 m+2) has two inputs namely Ro(k,2m+1) and Ro(k,2 m+2) and has one output Fo(k,2 m+2).

The 2:1 Mux YU(k,2 m+1) has two inputs namely Ui(k,2 m+1) and YUi(k,2m+1) and has one output YUo(k,2 m+1). The 2:1 Mux U(k,2 m+1) has twoinputs namely YUo(k,2 m+1) and Fo(k,2 m+1) and has one output Uo(k,2m+1). The 2:1 Mux U(k,2 m+2) has two inputs namely Ui(k,2 m+2) andFo(k,2 m+2) and has one output Uo(k,2 m+2). The 2:1 Mux B(k,2 m+1) hastwo inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) and has one output Bo(k,2m+1). The 2:1 Mux B(k,2 m+2) has two inputs namely Uo(k,2 m+1) andUo(k,2 m+2) and has one output Bo(k,2 m+2).

FIG. 10D illustrates a stage (ring “k”, stage “m”) 1000D consists of 5inputs namely Ri(k,2 m+1), Ri(k,2 m+2), Ui(k,2 m+1), Ui(k,2 m+2), andUYi(k,2 m+1); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), andFo(k,2 m+2). The stage (ring “k”, stage “m”) also consists of seven 2:1Muxes namely R(k,2 m+1), R(k,2 m+2), F(k,2 m+1), F(k,2 m+2), U(k,2 m+2),B(k,2 m+1), and B(k,2 m+2). The stage (ring “k”, stage “m”) alsoconsists of one 3:1 Mux namely UY(k,2 m+1). The 2:1 Mux R(k,2 m+1) hastwo inputs namely Ri(k,2 m+1) and Bo(k,2 m+1) and has one output Ro(k,2m+1). The 2:1 Mux R(k,2 m+2) has two inputs namely Ri(k,2 m+2) andBo(k,2 m+2) and has one output Ro(k,2 m+2). The 2:1 Mux F(k,2 m+1) hastwo inputs namely Ro(k,2 m+1) and Ro(k,2 m+2) and has one output Fo(k,2m+1). The 2:1 Mux F(k,2 m+2) has two inputs namely Ro(k,2 m+1) andRo(k,2 m+2) and has one output Fo(k,2 m+2).

The 3:1 Mux UY(k,2 m+1) has three inputs namely Ui(k,2 m+1), UYi(k,2m+1), and Fo(k,2 m+1), and has one output UYo(k,2 m+1). The 2:1 MuxU(k,2 m+2) has two inputs namely Ui(k,2 m+2) and Fo(k,2 m+2) and has oneoutput Uo(k,2 m+2). The 2:1 Mux B(k,2 m+1) has two inputs namely UYo(k,2m+1) and Uo(k,2 m+2) and has one output Bo(k,2 m+1). The 2:1 Mux B(k,2m+2) has two inputs namely UYo(k,2 m+1) and Uo(k,2 m+2) and has oneoutput Bo(k,2 m+2).

FIG. 10E illustrates a stage (ring “k”, stage “m”) 1000E consists of 6inputs namely Ri(k,2 m+1), Ri(k,2 m+2), YRi(k,2 m+1), Ui(k,2 m+1),Ui(k,2 m+2), and YUi(k,2 m+1); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2),Fo(k,2 m+1), and Fo(k,2 m+2). The stage (ring “k”, stage “m”) alsoconsists of ten 2:1 Muxes namely YR(k,2 m+1), R(k,2 m+1), R(k,2 m+2),F(k,2 m+1), F(k,2 m+2), YU(k,2 m+1), U(k,2 m+1), U(k,2 m+2), B(k,2 m+1),and B(k,2 m+2). The 2:1 Mux YR(k,2 m+1) has two inputs namely Ri(k,2m+1) and YRi(k,2 m+1) and has one output YRo(k,2 m+1). The 2:1 Mux R(k,2m+1) has two inputs namely YRo(k,2 m+1) and Bo(k,2 m+1) and has oneoutput Ro(k,2 m+1). The 2:1 Mux R(k,2 m+2) has two inputs namely Ri(k,2m+2) and Bo(k,2 m+2) and has one output Ro(k,2 m+2). The 2:1 Mux F(k,2m+1) has two inputs namely Ro(k,2 m+1) and Ro(k,2 m+2) and has oneoutput Fo(k,2 m+1). The 2:1 Mux F(k,2 m+2) has two inputs namely Ro(k,2m+1) and Ro(k,2 m+2) and has one output Fo(k,2 m+2).

The 2:1 Mux YU(k,2 m+1) has two inputs namely Ui(k,2 m+1) and YUi(k,2m+1) and has one output YUo(k,2 m+1). The 2:1 Mux U(k,2 m+1) has twoinputs namely YUo(k,2 m+1) and Fo(k,2 m+1) and has one output Uo(k,2m+1). The 2:1 Mux U(k,2 m+2) has two inputs namely Ui(k,2 m+2) andFo(k,2 m+2) and has one output Uo(k,2 m+2). The 2:1 Mux B(k,2 m+1) hastwo inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) and has one output Bo(k,2m+1). The 2:1 Mux B(k,2 m+2) has two inputs namely Uo(k,2 m+1) andUo(k,2 m+2) and has one output Bo(k,2 m+2).

FIG. 10F illustrates a stage (ring “k”, stage “m”) 1000F consists of 6inputs namely Ri(k,2 m+1), Ri(k,2 m+2), RYi(k,2 m+1), Ui(k,2 m+1),Ui(k,2 m+2), and UYi(k,2 m+1); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2),Fo(k,2 m+1), and Fo(k,2 m+2). The stage (ring “k”, stage “m”) alsoconsists of six 2:1 Muxes namely R(k,2 m+2), F(k,2 m+1), F(k,2 m+2),U(k,2 m+2), B(k,2 m+1), and B(k,2 m+2). The stage (ring “k”, stage “m”)also consists of two 3:1 Mux namely RY(k,2 m+1) and UY(k,2 m+1). The 3:1Mux RY(k,2 m+1) has three inputs namely Ri(k,2 m+1), RYi(k,2 m+1), andBo(k,2 m+1) and has one output RYo(k,2 m+1). The 2:1 Mux R(k,2 m+2) hastwo inputs namely Ri(k,2 m+2) and Bo(k,2 m+2) and has one output Ro(k,2m+2). The 2:1 Mux F(k,2 m+1) has two inputs namely RYo(k,2 m+1) andRo(k,2 m+2) and has one output Fo(k,2 m+1). The 2:1 Mux F(k,2 m+2) hastwo inputs namely RYo(k,2 m+1) and Ro(k,2 m+2) and has one output Fo(k,2m+2).

The 3:1 Mux UY(k,2 m+1) has three inputs namely Ui(k,2 m+1), UYi(k,2m+1), and Fo(k,2 m+1), and has one output UYo(k,2 m+1). The 2:1 MuxU(k,2 m+2) has two inputs namely Ui(k,2 m+2) and Fo(k,2 m+2) and has oneoutput Uo(k,2 m+2). The 2:1 Mux B(k,2 m+1) has two inputs namely UYo(k,2m+1) and Uo(k,2 m+2) and has one output Bo(k,2 m+1). The 2:1 Mux B(k,2m+2) has two inputs namely UYo(k,2 m+1) and Uo(k,2 m+2) and has oneoutput Bo(k,2 m+2).

FIG. 11A illustrates a stage (ring “k”, stage “m”) 1100A consists of 5inputs namely Ri(k,2 m+1), Ri(k,2 m+2), FYi(k,2 m+2), Ui(k,2 m+1), andUi(k,2 m+2); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), andFo(k,2 m+2). The stage (ring “k”, stage “m”) also consists of seven 2:1Muxes namely R(k,2 m+1), R(k,2 m+2), F(k,2 m+1), U(k,2 m+1), U(k,2 m+2),B(k,2 m+1), and B(k,2 m+2). The stage (ring “k”, stage “m”) alsoconsists of one 3:1 Mux namely FY(k,2 m+2). The 2:1 Mux R(k,2 m+1) hastwo inputs namely Ri(k,2 m+1) and Bo(k,2 m+1) and has one output Ro(k,2m+1). The 2:1 Mux R(k,2 m+2) has two inputs namely Ri(k,2 m+2) andBo(k,2 m+2) and has one output Ro(k,2 m+2). The 2:1 Mux F(k,2 m+1) hastwo inputs namely Ro(k,2 m+1) and Ro(k,2 m+2) and has one output Fo(k,2m+1). The 3:1 Mux FY(k,2 m+2) has three inputs namely Ro(k,2 m+1),Ro(k,2 m+2), and FYi(k,2 m+2), and has one output FYo(k,2 m+2).

The 2:1 Mux U(k,2 m+1) has two inputs namely Ui(k,2 m+1) and Fo(k,2 m+1)and has one output Uo(k,2 m+1). The 2:1 Mux U(k,2 m+2) has two inputsnamely Ui(k,2 m+2) and FYo(k,2 m+2) and has one output Uo(k,2 m+2). The2:1 Mux B(k,2 m+1) has two inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) andhas one output Bo(k,2 m+1). The 2:1 Mux B(k,2 m+2) has two inputs namelyUo(k,2 m+1) and Uo(k,2 m+2) and has one output Bo(k,2 m+2).

FIG. 11B illustrates a stage (ring “k”, stage “m”) 1100B consists of 5inputs namely Ri(k,2 m+1), Ri(k,2 m+2), Ui(k,2 m+1), Ui(k,2 m+2), andBYi(k,2 m+2); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2), Fo(k,2 m+1), andFo(k,2 m+2). The stage (ring “k”, stage “m”) also consists of seven 2:1Muxes namely R(k,2 m+1), R(k,2 m+2), F(k,2 m+1), F(k,2 m+2), U(k,2 m+1),U(k,2 m+2), and B(k,2 m+1). The stage (ring “k”, stage “m”) alsoconsists of one 3:1 Mux namely BY(k,2 m+2). The 2:1 Mux R(k,2 m+1) hastwo inputs namely Ri(k,2 m+1) and Bo(k,2 m+1) and has one output Ro(k,2m+1). The 2:1 Mux R(k,2 m+2) has two inputs namely Ri(k,2 m+2) andBo(k,2 m+2) and has one output Ro(k,2 m+2). The 2:1 Mux F(k,2 m+1) hastwo inputs namely Ro(k,2 m+1) and Ro(k,2 m+2) and has one output Fo(k,2m+1). The 2:1 Mux F(k,2 m+2) has two inputs namely Ro(k,2 m+1), andRo(k,2 m+2), and has one output Fo(k,2 m+2).

The 2:1 Mux U(k,2 m+1) has two inputs namely Ui(k,2 m+1) and Fo(k,2 m+1)and has one output Uo(k,2 m+1). The 2:1 Mux U(k,2 m+2) has two inputsnamely Ui(k,2 m+2) and Fo(k,2 m+2) and has one output Uo(k,2 m+2). The2:1 Mux B(k,2 m+1) has two inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) andhas one output Bo(k,2 m+1). The 3:1 Mux BY(k,2 m+2) has three inputsnamely Uo(k,2 m+1), Uo(k,2 m+2), and BYi(k,2 m+2), and has one outputBYo(k,2 m+2).

FIG. 11C illustrates a stage (ring “k”, stage “m”) 1100C consists of 6inputs namely Ri(k,2 m+1), Ri(k,2 m+2), FYi(k,2 m+2), Ui(k,2 m+1),Ui(k,2 m+2), and BYi(k,2 m+2); and 4 outputs Bo(k,2 m+1), Bo(k,2 m+2),Fo(k,2 m+1), and Fo(k,2 m+2). The stage (ring “k”, stage “m”) alsoconsists of six 2:1 Muxes namely R(k,2 m+1), R(k,2 m+2), F(k,2 m+1),U(k,2 m+1), U(k,2 m+2), and B(k,2 m+1). The stage (ring “k”, stage “m”)also consists of two 3:1 Muxes namely FY(k,2 m+2) and BY(k,2 m+2). The2:1 Mux R(k,2 m+1) has two inputs namely Ri(k,2 m+1) and Bo(k,2 m+1) andhas one output Ro(k,2 m+1). The 2:1 Mux R(k,2 m+2) has two inputs namelyRi(k,2 m+2) and Bo(k,2 m+2) and has one output Ro(k,2 m+2). The 2:1 MuxF(k,2 m+1) has two inputs namely Ro(k,2 m+1) and Ro(k,2 m+2) and has oneoutput Fo(k,2 m+1). The 3:1 Mux FY(k,2 m+2) has three inputs namelyRo(k,2 m+1), Ro(k,2 m+2), and FYi(k,2 m+2), and has one output FYo(k,2m+2).

The 2:1 Mux U(k,2 m+1) has two inputs namely Ui(k,2 m+1) and Fo(k,2 m+1)and has one output Uo(k,2 m+1). The 2:1 Mux U(k,2 m+2) has two inputsnamely Ui(k,2 m+2) and FYo(k,2 m+2) and has one output Uo(k,2 m+2). The2:1 Mux B(k,2 m+1) has two inputs namely Uo(k,2 m+1) and Uo(k,2 m+2) andhas one output Bo(k,2 m+1). The 3:1 Mux BY(k,2 m+2) has three inputsnamely Uo(k,2 m+1), Uo(k,2 m+2), and BYi(k,2 m+2) and has one outputBYo(k,2 m+2).

Referring to diagram 1200 in FIG. 12, illustrates all the connectionsbetween two arbitrary successive stages of a ring namely the stages(ring “x”, stage “p”) and (ring “x”, stage “p+1”) and two otherarbitrary successive stages of any other ring namely the stages (ring“y”, stage “q”) and (ring “y”, stage “q+1”), of the complete multi-stagehierarchical network V_(D-Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 5 inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), Ui(x,2 p+2), and UYi(x,2 p+1); and 4 outputsBo(x,2 p+1), Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring“x”, stage “p”) also consists of seven 2:1 Muxes namely R(x,2 p+1),R(x,2 p+2), F(x,2 p+1), F(x,2 p+2), U(x,2 p+2), B(x,2 p+1), and B(x,2p+2). The stage (ring “x”, stage “p”) also consists of one 3:1 Muxnamely UY(x,2 p+1). The 2:1 Mux R(x,2 p+1) has two inputs namely Ri(x,2p+1) and Bo(x,2 p+1) and has one output Ro(x,2 p+1). The 2:1 Mux R(x,2p+2) has two inputs namely Ri(x,2 p+2) and Bo(x,2 p+2) and has oneoutput Ro(x,2 p+2). The 2:1 Mux F(x,2 p+1) has two inputs namely Ro(x,2p+1) and Ro(x,2 p+2) and has one output Fo(x,2 p+1). The 2:1 Mux F(x,2p+2) has two inputs namely Ro(x,2 p+1) and Ro(x,2 p+2) and has oneoutput Fo(x,2 p+2).

The 3:1 Mux UY(x,2 p+1) has three inputs namely Ui(x,2 p+1), UYi(x,2p+1), and Fo(x,2 p+1), and has one output UYo(x,2 p+1). The 2:1 MuxU(x,2 p+2) has two inputs namely Ui(x,2 p+2) and Fo(x,2 p+2) and has oneoutput Uo(x,2 p+2). The 2:1 Mux B(x,2 p+1) has two inputs namely UYo(x,2p+1) and Uo(x,2 p+2) and has one output Bo(x,2 p+1). The 2:1 Mux B(x,2p+2) has two inputs namely UYo(x,2 p+1) and Uo(x,2 p+2) and has oneoutput Bo(x,2 p+2).

The stage (ring “x”, stage “p+1”) consists of 5 inputs namely Ri(x,2p+3), Ri(x,2 p+4), RYi(x,2 p+3), Ui(x,2 p+3), and Ui(x,2 p+4); and 4outputs Bo(x,2 p+3), Bo(x,2 p+4), Fo(x,2 p+3), and Fo(x,2 p+4). Thestage (ring “x”, stage “p+1”) also consists of seven 2:1 Muxes namelyR(x,2 p+4), F(x,2 p+3), F(x,2 p+4), U(x,2 p+3), U(x,2 p+4), B(x,2 p+3),and B(x,2 p+4). The stage (ring “x”, stage “p+1”) also consists of one3:1 Mux namely RY(x,2 p+3). The 3:1 Mux RY(x,2 p+3) has three inputsnamely Ri(x,2 p+3), RYi(x,2 p+3), and Bo(x,2 p+3), and has one outputRYo(x,2 p+3). The 2:1 Mux R(x,2 p+4) has two inputs namely Ri(x,2 p+4)and Bo(x,2 p+4) and has one output Ro(x,2 p+4). The 2:1 Mux F(x,2 p+3)has two inputs namely RYo(x,2 p+3) and Ro(x,2 p+4) and has one outputFo(x,2 p+3). The 2:1 Mux F(x,2 p+4) has two inputs namely RYo(x,2 p+3)and Ro(x,2 p+4) and has one output Fo(x,2 p+4).

The 2:1 Mux U(x,2 p+3) has two inputs namely Ui(x,2 p+3) and Fo(x,2 p+3)and has one output Uo(x,2 p+3). The 2:1 Mux U(x,2 p+4) has two inputsnamely Ui(x,2 p+4) and Fo(x,2 p+4) and has one output Uo(x,2 p+4). The2:1 Mux B(x,2 p+3) has two inputs namely Uo(x,2 p+3) and Uo(x,2 p+4) andhas one output Bo(x,2 p+3). The 2:1 Mux B(x,2 p+4) has two inputs namelyUo(x,2 p+3) and Uo(x,2 p+4) and has one output Bo(x,2 p+4).

The output Fo(x,2 p+1) of the stage (ring “x”, stage “p”) is connectedto the input Ri(x,2 p+3) of the stage (ring “x”, stage “p+1”). And theoutput Bo(x,2 p+3) of the stage (ring “x”, stage “p+1”) is connected tothe input Ui(x,2 p+1) of the stage (ring “x”, stage “p”).

The stage (ring “y”, stage “q”) consists of 5 inputs namely Ri(y,2 q+1),Ri(y,2 q+2), Ui(y,2 q+1), Ui(y,2 q+2), and YUi(y,2 q+1); and 4 outputsBo(y,2 q+1), Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring“y”, stage “q”) also consists of nine 2:1 Muxes namely R(y,2 q+1), R(y,2q+2), F(y,2 q+1), F(y,2 q+2), YU(y,2 q+1), U(y,2 q+1), U(y,2 q+2), B(y,2q+1), and B(y,2 q+2). The 2:1 Mux R(y,2 q+1) has two inputs namelyRi(y,2 q+1) and Bo(y,2 q+1) and has one output Ro(y,2 q+1). The 2:1 MuxR(y,2 q+2) has two inputs namely Ri(y,2 q+2) and Bo(y,2 q+2) and has oneoutput Ro(y,2 q+2). The 2:1 Mux F(y,2 q+1) has two inputs namely Ro(y,2q+1) and Ro(y,2 q+2) and has one output Fo(y,2 q+1). The 2:1 Mux F(y,2q+2) has two inputs namely Ro(y,2 q+1) and Ro(y,2 q+2) and has oneoutput Fo(y,2 q+2).

The 2:1 Mux YU(y,2 q+1) has two inputs namely Ui(y,2 q+1) and YUi(y,2q+1) and has one output YUo(y,2 q+1). The 2:1 Mux U(y,2 q+1) has twoinputs namely YUo(y,2 q+1) and Fo(y,2 q+1) and has one output Uo(y,2q+1). The 2:1 Mux U(y,2 q+2) has two inputs namely Ui(y,2 q+2) andFo(y,2 q+2) and has one output Uo(y,2 q+2). The 2:1 Mux B(y,2 q+1) hastwo inputs namely Uo(y,2 q+1) and Uo(y,2 q+2) and has one output Bo(y,2q+1). The 2:1 Mux B(y,2 q+2) has two inputs namely Uo(y,2 q+1) andUo(y,2 q+2) and has one output Bo(y,2 q+2).

The stage (ring “y”, stage “q+1”) consists of 5 inputs namely Ri(y,2q+3), Ri(y,2 q+4), YRi(y,2 q+3), Ui(y,2 q+3), and Ui(y,2 q+4); and 4outputs Bo(y,2 q+3), Bo(y,2 q+4), Fo(y,2 q+3), and Fo(y,2 q+4). Thestage (ring “y”, stage “q+1”) also consists of nine 2:1 Muxes namelyR(y,2 q+3), R(y,2 q+4), YR(y,2 q+3), F(y,2 q+3), F(y,2 q+4), U(y,2 q+3),U(y,2 q+4), B(y,2 q+3), and B(y,2 q+4). The 2:1 Mux YR(y,2 q+3) has twoinputs namely Ri(y,2 q+3) and YRi(y,2 q+3) and has one output YRo(y,2q+3). The 2:1 Mux R(y,2 q+3) has two inputs namely YRo(y,2 q+3) andBo(y,2 q+3) and has one output Ro(y,2 q+3). The 2:1 Mux R(y,2 q+4) hastwo inputs namely Ri(y,2 q+4) and Bo(y,2 q+4) and has one output Ro(y,2q+4). The 2:1 Mux F(y,2 q+3) has two inputs namely Ro(y,2 q+3) andRo(y,2 q+4) and has one output Fo(y,2 q+3). The 2:1 Mux F(y,2 q+4) hastwo inputs namely Ro(y,2 q+3) and Ro(y,2 q+4) and has one output Fo(y,2q+4).

The 2:1 Mux U(y,2 q+3) has two inputs namely Ui(y,2 q+3) and Fo(y,2 q+3)and has one output Uo(y,2 q+3). The 2:1 Mux U(y,2 q+4) has two inputsnamely Ui(y,2 q+4) and Fo(y,2 q+4) and has one output Uo(y,2 q+4). The2:1 Mux B(y,2 q+3) has two inputs namely Uo(y,2 q+3) and Uo(y,2 q+4) andhas one output Bo(y,2 q+3). The 2:1 Mux B(y,2 q+4) has two inputs namelyUo(y,2 q+3) and Uo(y,2 q+4) and has one output Bo(y,2 q+4).

The output Fo(y,2 q+1) of the stage (ring “y”, stage “q”) is connectedto the input Ri(y,2 q+3) of the stage (ring “y”, stage “q+1”). And theoutput Bo(y,2 q+3) of the stage (ring “y”, stage “q+1”) is connected tothe input Ui(y,2 q+1) of the stage (ring “y”, stage “q”).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to two inputs namely input Ri(y,2 q+4) of thestage (ring “y”, stage “q+1”) and input YUi(y,2 q+1) of the stage (ring“y”, stage “q”). The output Bo(x,2 p+4) of the stage (ring “x”, stage“p+1”) is connected via the wire Hop(1,2) to two inputs namely inputUi(y,2 q+2) of the stage (ring “y”, stage “q”) and input YRi(y,2 q+3) ofthe stage (ring “y”, stage “q+1”).

The output Fo(y,2 q+2) of the stage (ring “y”, stage “q”) is connectedvia the wire Hop(2,1) to two inputs namely input Ri(x,2 p+4) of thestage (ring “x”, stage “p+1”) and input UYi(x,2 p+1) of the stage (ring“x”, stage “p”). The output Bo(y,2 q+4) of the stage (ring “y”, stage“q+1”) is connected via the wire Hop(2,2) to two inputs namely inputUi(x,2 p+2) of the stage (ring “x”, stage “p”) and input RYi(x,2 p+3) ofthe stage (ring “x”, stage “p+1”).

Referring to diagram 1300 in FIG. 13, illustrates all the connectionsbetween two arbitrary successive stages of a ring namely the stages(ring “x”, stage “p”) and (ring “x”, stage “p+1”) and two otherarbitrary successive stages of any other ring namely the stages (ring“y”, stage “q”) and (ring “y”, stage “q+1”), of the complete multi-stagehierarchical network V_(D-Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 6 inputs namely Fi(x,2 p+1),Fi(x,2 p+2), YFi(x,2 p+1), Ui(x,2 p+1), Ui(x,2 p+2), and YUi(x,2 p+1);and 4 outputs Bo(x,2 p+1), Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2).The stage (ring “x”, stage “p”) also consists of eight 2:1 Muxes namelyF(x,2 p+1), F(x,2 p+2), YF(x,2 p+1), U(x,2 p+1), U(x,2 p+2), YU(x,2p+1), B(x,2 p+1), and B(x,2 p+2). The 2:1 Mux YF(x,2 p+1) has two inputsnamely Fi(x,2 p+1) and YFi(x,2 p+1) and has one output YFo(x,2 p+1). The2:1 Mux F(x,2 p+1) has two inputs namely YFo(x,2 p+1) and Fi(x,2 p+2)and has one output Fo(x,2 p+1). The 2:1 Mux F(x,2 p+2) has two inputsnamely YFo(x,2 p+1) and Fi(x,2 p+2) and has one output Fo(x,2 p+2).

The 2:1 Mux YU(x,2 p+1) has two inputs namely Ui(x,2 p+1) and YUi(x,2p+1) and has one output YUo(x,2 p+1). The 2:1 Mux U(x,2 p+1) has twoinputs namely YUo(x,2 p+1) and Fo(x,2 p+1) and has one output Uo(x,2p+1). The 2:1 Mux U(x,2 p+2) has two inputs namely Ui(x,2 p+2) andFo(x,2 p+2) and has one output Uo(x,2 p+2). The 2:1 Mux B(x,2 p+1) hastwo inputs namely Uo(x,2 p+1) and Uo(x,2 p+2) and has one output Bo(x,2p+1). The 2:1 Mux B(x,2 p+2) has two inputs namely Uo(x,2 p+1) andUo(x,2 p+2) and has one output Bo(x,2 p+2).

The stage (ring “x”, stage “p+1”) consists of 6 inputs namely Ri(x,2p+3), Ri(x,2 p+4), YRi(x,2 p+3), Ui(x,2 p+3), Ui(x,2 p+4), and YUi(x,2p+3); and 4 outputs Bo(x,2 p+3), Bo(x,2 p+4), Fo(x,2 p+3), and Fo(x,2p+4). The stage (ring “x”, stage “p+1”) also consists of ten 2:1 Muxesnamely YR(x,2 p+3), R(x,2 p+3), R(x,2 p+4), F(x,2 p+3), F(x,2 p+4),YU(x,2 p+3), U(x,2 p+3), U(x,2 p+4), B(x,2 p+3), and B(x,2 p+4). The 2:1Mux YR(x,2 p+3) has two inputs namely Ri(x,2 p+3) and YRi(x,2 p+3) andhas one output YRo(x,2 p+3). The 2:1 Mux R(x,2 p+3) has two inputsnamely YRo(x,2 p+3) and Bo(x,2 p+3) and has one output Ro(x,2 p+3). The2:1 Mux R(x,2 p+4) has two inputs namely Ri(x,2 p+4) and Bo(x,2 p+4) andhas one output Ro(x,2 p+4). The 2:1 Mux F(x,2 p+3) has two inputs namelyRo(x,2 p+3) and Ro(x,2 p+4) and has one output Fo(x,2 p+3). The 2:1 MuxF(x,2 p+4) has two inputs namely Ro(x,2 p+3) and Ro(x,2 p+4) and has oneoutput Fo(x,2 p+4).

The 2:1 Mux YU(x,2 p+3) has two inputs namely Ui(x,2 p+3) and YUi(x,2p+3) and has one output YUo(x,2 p+3). The 2:1 Mux U(x,2 p+3) has twoinputs namely YUo(x,2 p+3) and Fo(x,2 p+3) and has one output Uo(x,2p+3). The 2:1 Mux U(x,2 p+4) has two inputs namely Ui(x,2 p+4) andFo(x,2 p+4) and has one output Uo(x,2 p+4). The 2:1 Mux B(x,2 p+3) hastwo inputs namely Uo(x,2 p+3) and Uo(x,2 p+4) and has one output Bo(x,2p+3). The 2:1 Mux B(x,2 p+4) has two inputs namely Uo(x,2 p+3) andUo(x,2 p+4) and has one output Bo(x,2 p+4).

The output Fo(x,2 p+1) of the stage (ring “x”, stage “p”) is connectedto the input Ri(x,2 p+3) of the stage (ring “x”, stage “p+1”). And theoutput Bo(x,2 p+3) of the stage (ring “x”, stage “p+1”) is connected tothe input Ui(x,2 p+1) of the stage (ring “x”, stage “p”).

The stage (ring “y”, stage “q”) consists of 6 inputs namely Fi(y,2 q+1),Fi(y,2 q+2), YFi(y,2 q+1), Ui(y,2 q+1), Ui(y,2 q+2), and UYi(y,2 q+1);and 4 outputs Bo(y,2 q+1), Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2).The stage (ring “y”, stage “q”) also consists of six 2:1 Muxes namelyF(y,2 q+1), F(y,2 q+2), YF(y,2 q+1), U(y,2 q+2), B(y,2 q+1), and B(y,2q+2). The stage (ring “y”, stage “q”) also consists of one 3:1 Muxnamely UY(y,2 q+1). The 2:1 Mux YF(y,2 q+1) has two inputs namely Fi(y,2q+1) and YFi(y,2 q+1) and has one output YFo(y,2 q+1). The 2:1 Mux F(y,2q+1) has two inputs namely YFo(y,2 q+1) and Fi(y,2 q+2) and has oneoutput Fo(y,2 q+1). The 2:1 Mux F(y,2 q+2) has two inputs namely YFo(y,2q+1) and Fi(y,2 q+2) and has one output Fo(y,2 q+2).

The 3:1 Mux UY(y,2 q+1) has three inputs namely Ui(y,2 q+1), UYi(y,2q+1) and Fo(y,2 q+1) and has one output UYo(y,2 q+1). The 2:1 Mux U(y,2q+2) has two inputs namely Ui(y,2 q+2) and Fo(y,2 q+2) and has oneoutput Uo(y,2 q+2). The 2:1 Mux B(y,2 q+1) has two inputs namely UYo(y,2q+1) and Uo(y,2 q+2) and has one output Bo(y,2 q+1). The 2:1 Mux B(y,2q+2) has two inputs namely UYo(y,2 q+1) and Uo(y,2 q+2) and has oneoutput Bo(y,2 q+2).

The stage (ring “y”, stage “q+1”) consists of 6 inputs namely Ri(y,2q+3), Ri(y,2 q+4), RYi(y,2 q+3), Ui(y,2 q+3), Ui(y,2 q+4), and UYi(y,2q+3); and 4 outputs Bo(y,2 q+3), Bo(y,2 q+4), Fo(y,2 q+3), and Fo(y,2q+4). The stage (ring “y”, stage “2 q+1”) also consists of six 2:1 Muxesnamely R(y,2 q+4), F(y,2 q+3), F(y,2 q+4), U(y,2 q+4), B(y,2 q+3), andB(y,2 q+4). The stage (ring “y”, stage “2 q+1”) also consists of two 3:1Mux namely RY(y,2 q+3) and UY(y,2 q+3). The 3:1 Mux RY(y,2 q+3) hasthree inputs namely Ri(y,2 q+3), RYi(y,2 q+3), and Bo(y,2 q+3) and hasone output RYo(y,2 q+3). The 2:1 Mux R(y,2 q+4) has two inputs namelyRi(y,2 q+4) and Bo(y,2 q+4) and has one output Ro(y,2 q+4). The 2:1 MuxF(y,2 q+3) has two inputs namely RYo(y,2 q+3) and Ro(y,2 q+4) and hasone output Fo(y,2 q+3). The 2:1 Mux F(y,2 q+4) has two inputs namelyRYo(y,2 q+3) and Ro(y,2 q+4) and has one output Fo(y,2 q+4).

The 3:1 Mux UY(y,2 q+3) has three inputs namely Ui(y,2 q+3), UYi(y,2q+3), and Fo(y,2 q+3), and has one output UYo(y,2 q+3). The 2:1 MuxU(y,2 q+4) has two inputs namely Ui(y,2 q+4) and Fo(y,2 q+4) and has oneoutput Uo(y,2 q+4). The 2:1 Mux B(y,2 q+3) has two inputs namely UYo(y,2q+3) and Uo(y,2 q+4) and has one output Bo(y,2 q+3). The 2:1 Mux B(y,2q+4) has two inputs namely UYo(y,2 q+3) and Uo(y,2 q+4) and has oneoutput Bo(y,2 q+4).

The output Fo(y,2 q+1) of the stage (ring “y”, stage “q”) is connectedto the input Ri(y,2 q+3) of the stage (ring “y”, stage “q+1”). And theoutput Bo(y,2 q+3) of the stage (ring “y”, stage “q+1”) is connected tothe input Ui(y,2 q+1) of the stage (ring “y”, stage “q”).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to two inputs namely input Ri(y,2 q+4) of thestage (ring “y”, stage “q+1”) and input UYi(y,2 q+1) of the stage (ring“y”, stage “q”). The output Bo(x,2 p+4) of the stage (ring “x”, stage“p+1”) is connected via the wire Hop(1,2) to two inputs namely inputUi(y,2 q+2) of the stage (ring “y”, stage “q”) and input RYi(y,2 q+3) ofthe stage (ring “y”, stage “q+1”).

The output Fo(y,2 q+2) of the stage (ring “y”, stage “q”) is connectedvia the wire Hop(2,1) to two inputs namely input Ri(x,2 p+4) of thestage (ring “x”, stage “p+1”) and input YUi(x,2 p+1) of the stage (ring“x”, stage “p”). The output Bo(y,2 q+4) of the stage (ring “y”, stage“q+1”) is connected via the wire Hop(2,2) to two inputs namely inputUi(x,2 p+2) of the stage (ring “x”, stage “p”) and input YRi(x,2 p+3) ofthe stage (ring “x”, stage “p+1”).

Referring to diagram 1400 in FIG. 14, illustrates all the connectionsbetween two arbitrary successive stages of a ring namely the stages(ring “x”, stage “p”) and (ring “x”, stage “p+1”) and two otherarbitrary successive stages of any other ring namely the stages (ring“y”, stage “q”) and (ring “y”, stage “q+1”), of the complete multi-stagehierarchical network V_(D-Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 5 inputs namely Fi(x,2 p+1),Fi(x,2 p+2), YUi(x,2 p+1), Ui(x,2 p+1), and Ui(x,2 p+2); and 4 outputsBo(x,2 p+1), Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring“x”, stage “p”) also consists of seven 2:1 Muxes namely F(x,2 p+1),F(x,2 p+2), YF(x,2 p+1), U(x,2 p+1), U(x,2 p+2), B(x,2 p+1), and B(x,2p+2). The 2:1 Mux F(x,2 p+1) has two inputs namely Fi(x,2 p+1) andFi(x,2 p+2) and has one output Fo(x,2 p+1). The 2:1 Mux F(x,2 p+2) hastwo inputs namely Fi(x,2 p+1) and Fi(x,2 p+2) and has one output Fo(x,2p+2).

The 2:1 Mux YU(x,2 p+1) has two inputs namely Ui(x,2 p+1) and YUi(x,2p+1) and has one output YUo(x,2 p+1). The 2:1 Mux U(x,2 p+1) has twoinputs namely YUo(x,2 p+1) and Fo(x,2 p+1) and has one output Uo(x,2p+1). The 2:1 Mux U(x,2 p+2) has two inputs namely Ui(x,2 p+2) andFo(x,2 p+2) and has one output Uo(x,2 p+2). The 2:1 Mux B(x,2 p+1) hastwo inputs namely Uo(x,2 p+1) and Uo(x,2 p+2) and has one output Bo(x,2p+1). The 2:1 Mux B(x,2 p+2) has two inputs namely Uo(x,2 p+1) andUo(x,2 p+2) and has one output Bo(x,2 p+2).

The stage (ring “x”, stage “p+1”) consists of 5 inputs namely Fi(x,2p+3), Fi(x,2 p+4), YFi(x,2 p+3), Ui(x,2 p+3), and Ui(x,2 p+4); and 4outputs Bo(x,2 p+3), Bo(x,2 p+4), Fo(x,2 p+3), and Fo(x,2 p+4). Thestage (ring “x”, stage “p+1”) also consists of seven 2:1 Muxes namelyYF(x,2 p+3), F(x,2 p+3), F(x,2 p+4), U(x,2 p+3), U(x,2 p+4), B(x,2 p+3),and B(x,2 p+4). The 2:1 Mux YF(x,2 p+3) has two inputs namely Fi(x,2p+3) and YFi(x,2 p+3) and has one output YFo(x,2 p+3). The 2:1 Mux F(x,2p+3) has two inputs namely YFo(x,2 p+3) and Fi(x,2 p+4) and has oneoutput Fo(x,2 p+3). The 2:1 Mux F(x,2 p+4) has two inputs namely YFo(x,2p+3) and Fi(x,2 p+4) and has one output Fo(x,2 p+4).

The 2:1 Mux U(x,2 p+3) has two inputs namely Ui(x,2 p+3) and Fo(x,2 p+3)and has one output Uo(x,2 p+3). The 2:1 Mux U(x,2 p+4) has two inputsnamely Ui(x,2 p+4) and Fo(x,2 p+4) and has one output Uo(x,2 p+4). The2:1 Mux B(x,2 p+3) has two inputs namely Uo(x,2 p+3) and Uo(x,2 p+4) andhas one output Bo(x,2 p+3). The 2:1 Mux B(x,2 p+4) has two inputs namelyUo(x,2 p+3) and Uo(x,2 p+4) and has one output Bo(x,2 p+4).

The output Fo(x,2 p+1) of the stage (ring “x”, stage “p”) is connectedto the input Fi(x,2 p+3) of the stage (ring “x”, stage “p+1”). And theoutput Bo(x,2 p+3) of the stage (ring “x”, stage “p+1”) is connected tothe input Ui(x,2 p+1) of the stage (ring “x”, stage “p”).

The stage (ring “y”, stage “q”) consists of 5 inputs namely Fi(y,2 q+1),Fi(y,2 q+2), UYi(y,2 q+1), Ui(y,2 q+1), and Ui(y,2 q+2); and 4 outputsBo(y,2 q+1), Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2). The stage (ring“y”, stage “q”) also consists of five 2:1 Muxes namely F(y,2 q+1), F(y,2q+2), U(y,2 q+2), B(y,2 q+1), and B(y,2 q+2). The stage (ring “y”, stage“q”) also consists of one 3:1 Mux namely UY(y,2 q+1). The 2:1 Mux F(y,2q+1) has two inputs namely Fi(y,2 q+1) and Fi(y,2 q+2) and has oneoutput Fo(y,2 q+1). The 2:1 Mux F(y,2 q+2) has two inputs namely Fi(y,2q+1) and Fi(y,2 q+2) and has one output Fo(y,2 q+2).

The 3:1 Mux UY(y,2 q+1) has three inputs namely Ui(y,2 q+1), UYi(y,2q+1) and Fo(y,2 q+1) and has one output UYo(y,2 q+1). The 2:1 Mux U(y,2q+2) has two inputs namely Ui(y,2 q+2) and Fo(y,2 q+2) and has oneoutput Uo(y,2 q+2). The 2:1 Mux B(y,2 q+1) has two inputs namely UYo(y,2q+1) and Uo(y,2 q+2) and has one output Bo(y,2 q+1). The 2:1 Mux B(y,2q+2) has two inputs namely UYo(y,2 q+1) and Uo(y,2 q+2) and has oneoutput Bo(y,2 q+2).

The stage (ring “y”, stage “q+1”) consists of 5 inputs namely Fi(y,2q+3), Fi(y,2 q+4), YFi(y,2 q+3), Ui(y,2 q+3), and Ui(y,2 q+4); and 4outputs Bo(y,2 q+3), Bo(y,2 q+4), Fo(y,2 q+3), and Fo(y,2 q+4). Thestage (ring “y”, stage “q+1”) also consists of seven 2:1 Muxes namelyYF(y,2 q+3), F(y,2 q+3), F(y,2 q+4), U(y,2 q+3), U(y,2 q+4), B(y,2 q+3),and B(y,2 q+4). The 2:1 Mux YF(y,2 q+3) has two inputs namely Fi(y,2q+3) and YFi(y,2 q+3) and has one output YFo(y,2 q+3). The 2:1 Mux F(y,2q+3) has two inputs namely YFo(y,2 q+3) and Fi(y,2 q+4) and has oneoutput Fo(y,2 q+3). The 2:1 Mux F(y,2 q+4) has two inputs namely YFo(y,2q+3) and Fi(y,2 q+4) and has one output Fo(y,2 q+4).

The 2:1 Mux U(y,2 q+3) has two inputs namely Ui(y,2 q+3) and Fo(y,2 q+3)and has one output Uo(y,2 q+3). The 2:1 Mux U(y,2 q+4) has two inputsnamely Ui(y,2 q+4) and Fo(y,2 q+4) and has one output Uo(y,2 q+4). The2:1 Mux B(y,2 q+3) has two inputs namely Uo(y,2 q+3) and Uo(y,2 q+4) andhas one output Bo(y,2 q+3). The 2:1 Mux B(y,2 q+4) has two inputs namelyUo(y,2 q+3) and Uo(y,2 q+4) and has one output Bo(y,2 q+4).

The output Fo(y,2 q+1) of the stage (ring “y”, stage “q”) is connectedto the input Fi(y,2 q+3) of the stage (ring “y”, stage “q+1”). And theoutput Bo(y,2 q+3) of the stage (ring “y”, stage “q+1”) is connected tothe input Ui(y,2 q+1) of the stage (ring “y”, stage “q”).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to two inputs namely input Fi(y,2 q+4) of thestage (ring “y”, stage “q+1”) and input UYi(y,2 q+1) of the stage (ring“y”, stage “q”). The output Bo(x,2 p+4) of the stage (ring “x”, stage“p+1”) is connected via the wire Hop(1,2) to two inputs namely inputUi(y,2 q+2) of the stage (ring “y”, stage “q”) and input YFi(y,2 q+3) ofthe stage (ring “y”, stage “q+1”).

The output Fo(y,2 q+2) of the stage (ring “y”, stage “q”) is connectedvia the wire Hop(2,1) to two inputs namely input Fi(x,2 p+4) of thestage (ring “x”, stage “p+1”) and input YUi(x,2 p+1) of the stage (ring“x”, stage “p”). The output Bo(y,2 q+4) of the stage (ring “y”, stage“q+1”) is connected via the wire Hop(2,2) to two inputs namely inputUi(x,2 p+2) of the stage (ring “x”, stage “p”) and input YFi(x,2 p+3) ofthe stage (ring “x”, stage “p+1”).

Referring to diagram 1500 in FIG. 15, illustrates all the connectionsbetween two arbitrary successive stages of a ring namely the stages(ring “x”, stage “p”) and (ring “x”, stage “p+1”) and two otherarbitrary successive stages of any other ring namely the stages (ring“y”, stage “q”) and (ring “y”, stage “q+1”), of the complete multi-stagehierarchical network V_(D-Comb)(N₁,N₂,d,s).

The stage (ring “x”, stage “p”) consists of 5 inputs namely Ri(x,2 p+1),Ri(x,2 p+2), Ui(x,2 p+1), Ui(x,2 p+2), and BYi(x,2 p+2); and 4 outputsBo(x,2 p+1), Bo(x,2 p+2), Fo(x,2 p+1), and Fo(x,2 p+2). The stage (ring“x”, stage “p”) also consists of seven 2:1 Muxes namely R(x,2 p+1),R(x,2 p+2), F(x,2 p+1), F(x,2 p+2), U(x,2 p+1), U(x,2 p+2), and B(x,2p+1). The stage (ring “x”, stage “p”) also consists of one 3:1 Muxnamely BY(x,2 p+2). The 2:1 Mux R(x,2 p+1) has two inputs namely Ri(x,2p+1) and Bo(x,2 p+1) and has one output Ro(x,2 p+1). The 2:1 Mux R(x,2p+2) has two inputs namely Ri(x,2 p+2) and Bo(x,2 p+2) and has oneoutput Ro(x,2 p+2). The 2:1 Mux F(x,2 p+1) has two inputs namely Ro(x,2p+1) and Ro(x,2 p+2) and has one output Fo(x,2 p+1). The 2:1 Mux F(x,2p+2) has two inputs namely Ro(x,2 p+1), and Ro(x,2 p+2), and has oneoutput Fo(x,2 p+2).

The 2:1 Mux U(x,2 p+1) has two inputs namely Ui(x,2 p+1) and Fo(x,2 p+1)and has one output Uo(x,2 p+1). The 2:1 Mux U(x,2 p+2) has two inputsnamely Ui(x,2 p+2) and Fo(x,2 p+2) and has one output Uo(x,2 p+2). The2:1 Mux B(x,2 p+1) has two inputs namely Uo(x,2 p+1) and Uo(x,2 p+2) andhas one output Bo(x,2 p+1). The 3:1 Mux BY(x,2 p+2) has three inputsnamely Uo(x,2 p+1), Uo(x,2 p+2), and BYi(x,2 p+2), and has one outputBYo(x,2 p+2).

The stage (ring “x”, stage “p+1”) consists of 5 inputs namely Ri(x,2p+3), Ri(x,2 p+4), FYi(x,2 p+4), Ui(x,2 p+3), and Ui(x,2 p+4); and 4outputs Bo(x,2 p+3), Bo(x,2 p+4), Fo(x,2 p+3), and Fo(x,2 p+4). Thestage (ring “x”, stage “p+1”) also consists of seven 2:1 Muxes namelyR(x,2 p+3), R(x,2 p+4), F(x,2 p+3), U(x,2 p+3), U(x,2 p+4), B(x,2 p+3),and B(x,2 p+4). The stage (ring “x”, stage “p+1”) also consists of one3:1 Mux namely FY(x,2 p+4). The 2:1 Mux R(x,2 p+3) has two inputs namelyRi(x,2 p+3) and Bo(x,2 p+3) and has one output Ro(x,2 p+3). The 2:1 MuxR(x,2 p+4) has two inputs namely Ri(x,2 p+4) and Bo(x,2 p+4) and has oneoutput Ro(x,2 p+4). The 2:1 Mux F(x,2 p+3) has two inputs namely Ro(x,2p+3) and Ro(x,2 p+4) and has one output Fo(x,2 p+3). The 3:1 Mux FY(x,2p+4) has three inputs namely Ro(x,2 p+3), Ro(x,2 p+4), and FYi(x,2 p+4),and has one output FYo(x,2 p+4).

The 2:1 Mux U(x,2 p+3) has two inputs namely Ui(x,2 p+3) and Fo(x,2 p+3)and has one output Uo(x,2 p+3). The 2:1 Mux U(x,2 p+4) has two inputsnamely Ui(x,2 p+4) and FYo(x,2 p+4) and has one output Uo(x,2 p+4). The2:1 Mux B(x,2 p+3) has two inputs namely Uo(x,2 p+3) and Uo(x,2 p+4) andhas one output Bo(x,2 p+3). The 2:1 Mux B(x,2 p+4) has two inputs namelyUo(x,2 p+3) and Uo(x,2 p+4) and has one output Bo(x,2 p+4).

The output Fo(x,2 p+1) of the stage (ring “x”, stage “p”) is connectedto the input Ri(x,2 p+3) of the stage (ring “x”, stage “p+1”). And theoutput Bo(x,2 p+3) of the stage (ring “x”, stage “p+1”) is connected tothe input Ui(x,2 p+1) of the stage (ring “x”, stage “p”).

The stage (ring “y”, stage “q”) consists of 6 inputs namely Ri(y,2 q+1),Ri(y,2 q+2), FYi(y,2 q+2), Ui(y,2 q+1), Ui(y,2 q+2), and BYi(y,2 q+2);and 4 outputs Bo(y,2 q+1), Bo(y,2 q+2), Fo(y,2 q+1), and Fo(y,2 q+2).The stage (ring “y”, stage “q”) also consists of six 2:1 Muxes namelyR(y,2 q+1), R(y,2 q+2), F(y,2 q+1), U(y,2 q+1), U(y,2 q+2), and B(y,2q+1). The stage (ring “y”, stage “q”) also consists of two 3:1 Muxesnamely FY(y,2 q+2) and BY(y,2 q+2). The 2:1 Mux R(y,2 q+1) has twoinputs namely Ri(y,2 q+1) and Bo(y,2 q+1) and has one output Ro(y,2q+1). The 2:1 Mux R(y,2 q+2) has two inputs namely Ri(y,2 q+2) andBo(y,2 q+2) and has one output Ro(y,2 q+2). The 2:1 Mux F(y,2 q+1) hastwo inputs namely Ro(y,2 q+1) and Ro(y,2 q+2) and has one output Fo(y,2q+1). The 3:1 Mux FY(y,2 q+2) has three inputs namely Ro(y,2 q+1),Ro(y,2 q+2), and FYi(y,2 q+2), and has one output FYo(y,2 q+2).

The 2:1 Mux U(y,2 q+1) has two inputs namely Ui(y,2 q+1) and Fo(y,2 q+1)and has one output Uo(y,2 q+1). The 2:1 Mux U(y,2 q+2) has two inputsnamely Ui(y,2 q+2) and FYo(y,2 q+2) and has one output Uo(y,2 q+2). The2:1 Mux B(y,2 q+1) has two inputs namely Uo(y,2 q+1) and Uo(y,2 q+2) andhas one output Bo(y,2 q+1). The 3:1 Mux BY(y,2 q+2) has three inputsnamely Uo(y,2 q+1), Uo(y,2 q+2), and BYi(y,2 q+2) and has one outputBYo(y,2 q+2).

The stage (ring “y”, stage “q+1”) consists of 5 inputs namely Fi(y,2q+3), Fi(y,2 q+4), YFi(y,2 q+3), Ui(y,2 q+3), and Ui(y,2 q+4); and 4outputs Bo(y,2 q+3), Bo(y,2 q+4), Fo(y,2 q+3), and Fo(y,2 q+4). Thestage (ring “y”, stage “q+1”) also consists of seven 2:1 Muxes namelyYF(y,2 q+3), F(y,2 q+3), F(y,2 q+4), U(y,2 q+3), U(y,2 q+4), B(y,2 q+3),and B(y,2 q+4). The 2:1 Mux YF(y,2 q+3) has two inputs namely Fi(y,2q+3) and YFi(y,2 q+3) and has one output YFo(y,2 q+3). The 2:1 Mux F(y,2q+3) has two inputs namely YFo(y,2 q+3) and Fi(y,2 q+4) and has oneoutput Fo(y,2 q+3). The 2:1 Mux F(y,2 q+4) has two inputs namely YFo(y,2q+3) and Fi(y,2 q+4) and has one output Fo(y,2 q+4).

The 2:1 Mux U(y,2 q+3) has two inputs namely Ui(y,2 q+3) and Fo(y,2 q+3)and has one output Uo(y,2 q+3). The 2:1 Mux U(y,2 q+4) has two inputsnamely Ui(y,2 q+4) and Fo(y,2 q+4) and has one output Uo(y,2 q+4). The2:1 Mux B(y,2 q+3) has two inputs namely Uo(y,2 q+3) and Uo(y,2 q+4) andhas one output Bo(y,2 q+3). The 2:1 Mux B(y,2 q+4) has two inputs namelyUo(y,2 q+3) and Uo(y,2 q+4) and has one output Bo(y,2 q+4).

The output Fo(y,2 q+1) of the stage (ring “y”, stage “q”) is connectedto the input Fi(y,2 q+3) of the stage (ring “y”, stage “q+1”). And theoutput Bo(y,2 q+3) of the stage (ring “y”, stage “q+1”) is connected tothe input Ui(y,2 q+1) of the stage (ring “y”, stage “q”).

The output Fo(x,2 p+2) of the stage (ring “x”, stage “p”) is connectedvia the wire Hop(1,1) to two inputs namely input Fi(y,2 q+4) of thestage (ring “y”, stage “q+1”) and input BYi(y,2 q+1) of the stage (ring“y”, stage “q”). The output Bo(x,2 p+4) of the stage (ring “x”, stage“p+1”) is connected via the wire Hop(1,2) to two inputs namely inputUi(y,2 q+2) of the stage (ring “y”, stage “q”) and input YFi(y,2 q+3) ofthe stage (ring “y”, stage “q+1”).

The output Fo(y,2 q+2) of the stage (ring “y”, stage “q”) is connectedvia the wire Hop(2,1) to two inputs namely input Ri(x,2 p+4) of thestage (ring “x”, stage “p+1”) and input BYi(x,2 p+1) of the stage (ring“x”, stage “p”). The output Bo(y,2 q+4) of the stage (ring “y”, stage“q+1”) is connected via the wire Hop(2,2) to two inputs namely inputUi(x,2 p+2) of the stage (ring “x”, stage “p”) and input YFi(x,2 p+4) ofthe stage (ring “x”, stage “p+1”).

In accordance with the current invention, either partial multi-stagehierarchical network V_(D-Comb)(N₁,N₂,d,s) 100A of FIG. 1A, or partialmulti-stage hierarchical network V_(D-Comb)(N₁,N₂,d,s) 100B of FIG. 1B,or partial multi-stage hierarchical network V_(D-Comb)(N₁,N₂,d,s) 100Cof FIG. 1C, corresponding to a block of 2D-grid of blocks 800 of FIG. 8,using any one of the embodiments of 200A-200F of FIGS. 2A-2F, 900A-900Eof FIGS. 9A-9E, 1000A-1000F of FIGS. 10A-10F, 1100A-1100C of FIGS.11A-11C to implement a stage of a ring of the multi-stage hierarchicalnetwork, either by using the hop wire connections or multi-drop hop wireconnections between two arbitrary stages in two different rings of thesame block or two different rings of different blocks described indiagram 700A of FIG. 7A may be any one of the embodiments of either thediagrams 300A of FIG. 3A, 300B of FIG. 3B, 300C of FIG. 3C, 300D of FIG.3D, 300E of FIG. 3E, 500A of FIG. 5A, 1200 of FIG. 12, 1300 of FIG. 13,1400 of FIG. 14, and 1500 of FIG. 15 or by using the hop wireconnections or multi-drop hop wire connections between two arbitrarystages in two different rings of the same block or two different ringsof different blocks may be any one of the embodiments of either thediagrams 400A of FIG. 4A, 400B of FIG. 4B, 600A of FIG. 6A, or 600B ofFIG. 6B is very efficient in the reduction of the die size, powerconsumption, and highly optimized for lower wire/path delay for higherperformance for practical routing applications to particularly to set upbroadcast, unicast and multicast connections. In general in accordancewith the current invention, where N₁ and N₂ of the complete multi-stagehierarchical network V_(D-Comb)(N₁,N₂,d,s) may be arbitrarily large insize and also the 2D-grid size 800 may also be arbitrarily large in sizein terms of both the number of rows and number of columns.

1) Programmable Integrated Circuit Embodiments

All the embodiments disclosed in the current invention are useful inprogrammable integrated circuit applications. FIG. 16A2 illustrates thedetailed diagram 1600A2 for the implementation of the diagram 1600A1 inprogrammable integrated circuit embodiments. Each crosspoint isimplemented by a transistor coupled between the corresponding inlet linkand outlet link, and a programmable cell in programmable integratedcircuit embodiments. Specifically crosspoint CP(1,1) is implemented bytransistor C(1,1) coupled between inlet link IL1 and outlet link OL1,and programmable cell P(1,1); crosspoint CP(1,2) is implemented bytransistor C(1,2) coupled between inlet link IL1 and outlet link OL2,and programmable cell P(1,2); crosspoint CP(2,1) is implemented bytransistor C(2,1) coupled between inlet link IL2 and outlet link OL1,and programmable cell P(2,1); and crosspoint CP(2,2) is implemented bytransistor C(2,2) coupled between inlet link IL2 and outlet link OL2,and programmable cell P(2,2).

If the programmable cell is programmed ON, the corresponding transistorcouples the corresponding inlet link and outlet link. If theprogrammable cell is programmed OFF, the corresponding inlet link andoutlet link are not connected. For example if the programmable cellP(1,1) is programmed ON, the corresponding transistor C(1,1) couples thecorresponding inlet link IL1 and outlet link OL1. If the programmablecell P(1,1) is programmed OFF, the corresponding inlet link IL1 andoutlet link OL1 are not connected. In volatile programmable integratedcircuit embodiments the programmable cell may be an SRAM (Static RandomAddress Memory) cell. In non-volatile programmable integrated circuitembodiments the programmable cell may be a Flash memory cell. Also theprogrammable integrated circuit embodiments may implement fieldprogrammable logic arrays (FPGA) devices, or programmable Logic devices(PLD), or Application Specific Integrated Circuits (ASIC) embedded withprogrammable logic circuits or 3D-FPGAs.

FIG. 16A2 also illustrates a buffer B1 on inlet link IL2. The signalsdriven along inlet link IL2 are amplified by buffer B1. Buffer B1 can beinverting or non-inverting buffer. Buffers such as B1 are used toamplify the signal in links which are usually long.

In other embodiments all the d*d switches described in the currentinvention are also implemented using muxes of different sizes controlledby SRAM cells or flash cells etc.

2) One-Time Programmable Integrated Circuit Embodiments

All the embodiments disclosed in the current invention are useful inone-time programmable integrated circuit applications. FIG. 16A3illustrates the detailed diagram 1600A3 for the implementation of thediagram 1600A1 in one-time programmable integrated circuit embodiments.Each crosspoint is implemented by a via coupled between thecorresponding inlet link and outlet link in one-time programmableintegrated circuit embodiments. Specifically crosspoint CP(1,1) isimplemented by via V(1,1) coupled between inlet link IL1 and outlet linkOL1; crosspoint CP(1,2) is implemented by via V(1,2) coupled betweeninlet link IL1 and outlet link OL2; crosspoint CP(2,1) is implemented byvia V(2,1) coupled between inlet link IL2 and outlet link OL1; andcrosspoint CP(2,2) is implemented by via V(2,2) coupled between inletlink IL2 and outlet link OL2.

If the via is programmed ON, the corresponding inlet link and outletlink are permanently connected which is denoted by thick circle at theintersection of inlet link and outlet link. If the via is programmedOFF, the corresponding inlet link and outlet link are not connectedwhich is denoted by the absence of thick circle at the intersection ofinlet link and outlet link. For example in the diagram 1600A3 the viaV(1,1) is programmed ON, and the corresponding inlet link IL1 and outletlink OL1 are connected as denoted by thick circle at the intersection ofinlet link IL1 and outlet link OL1; the via V(2,2) is programmed ON, andthe corresponding inlet link IL2 and outlet link OL2 are connected asdenoted by thick circle at the intersection of inlet link IL2 and outletlink OL2; the via V(1,2) is programmed OFF, and the corresponding inletlink IL1 and outlet link OL2 are not connected as denoted by the absenceof thick circle at the intersection of inlet link IL1 and outlet linkOL2; the via V(2,1) is programmed OFF, and the corresponding inlet linkIL2 and outlet link OL1 are not connected as denoted by the absence ofthick circle at the intersection of inlet link IL2 and outlet link OL1.One-time programmable integrated circuit embodiments may be anti-fusebased programmable integrated circuit devices or mask programmablestructured ASIC devices.

3) Integrated Circuit Placement and Route Embodiments

All the embodiments disclosed in the current invention are useful inIntegrated Circuit Placement and Route applications, for example in ASICbackend Placement and Route tools. FIG. 16A4 illustrates the detaileddiagram 1600A4 for the implementation of the diagram 1600A1 inIntegrated Circuit Placement and Route embodiments. In an integratedcircuit since the connections are known a-priori, the switch andcrosspoints are actually virtual. However the concept of virtual switchand virtual crosspoint using the embodiments disclosed in the currentinvention reduces the number of required wires, wire length needed toconnect the inputs and outputs of different netlists and the timerequired by the tool for placement and route of netlists in theintegrated circuit.

Each virtual crosspoint is used to either to hardwire or provide noconnectivity between the corresponding inlet link and outlet link.Specifically crosspoint CP(1,1) is implemented by direct connect pointDCP(1,1) to hardwire (i.e., to permanently connect) inlet link IL1 andoutlet link OL1 which is denoted by the thick circle at the intersectionof inlet link IL1 and outlet link OL1; crosspoint CP(2,2) is implementedby direct connect point DCP(2,2) to hardwire inlet link IL2 and outletlink OL2 which is denoted by the thick circle at the intersection ofinlet link IL2 and outlet link OL2. The diagram 1600A4 does not showdirect connect point DCP(1,2) and direct connect point DCP(1,3) sincethey are not needed and in the hardware implementation they areeliminated. Alternatively inlet link IL1 needs to be connected to outletlink OL1 and inlet link IL1 does not need to be connected to outlet linkOL2. Also inlet link IL2 needs to be connected to outlet link OL2 andinlet link IL2 does not need to be connected to outlet link OL1.Furthermore in the example of the diagram 1600A4, there is no need todrive the signal of inlet link IL1 horizontally beyond outlet link OL1and hence the inlet link IL1 is not even extended horizontally until theoutlet link OL2. Also the absence of direct connect point DCP(2,1)illustrates there is no need to connect inlet link IL2 and outlet linkOL1.

In summary in integrated circuit placement and route tools, the conceptof virtual switches and virtual cross points is used during theimplementation of the placement & routing algorithmically in software,however during the hardware implementation cross points in the crossstate are implemented as hardwired connections between the correspondinginlet link and outlet link, and in the bar state are implemented as noconnection between inlet link and outlet link.

3) More Application Embodiments

All the embodiments disclosed in the current invention are also usefulin the design of SoC interconnects, Field programmable interconnectchips, parallel computer systems and in time-space-time switches.

Scheduling Method Embodiments the Multi-Stage Hierarchical NetworkV_(Comb)(N₁,N₂,d,s):

FIG. 17 shows a high-level flowchart of a scheduling method 1700, in oneembodiment executed to setup multicast and unicast connections in themulti-stage hierarchical network V_(Comb)(N₁,N₂,d,s) disclosed in thisinvention. According to this embodiment, the set of multicastconnections are initialized to the beginning of the set in act 1710.Then the control goes to act 1720. In act 1720, next multicastconnection is selected in sequence form the set of multicastconnections. Then the control goes to act 1730.

In act 1730 it is checked if this is the next multicast connection insequence is NULL or i.e. all the multicast connections are scheduled. Ifact 1730 results “no”, that is there are more multicast connections tobe scheduled the control goes to act 1740. In act 1740 it is checked ifthis multicast connection is being scheduled for the first time. Or ifit is not scheduled for the first time, it is checked if any one of thelinks taken by this multicast connection is oversubscribed by any othermulticast connection is checked. If either the multicast connection isbeing scheduled for the first time or if any one of the links taken bythis multicast connection is oversubscribed the control goes to act1750. Otherwise control goes to act 1720 where the next multicastconnection will be selected. So act 1720, act 1730, and act 1740 areexecuted in a loop.

In act 1750 the multicast connection is not being scheduled for thefirst time and since at least one of the links taken by this multicastconnection is oversubscribed, the complete path taken this multicastconnection is cleared or the multicast connection's path is ripped. Thenthe control goes to act 1760. In act 1760, using the well-known A*search algorithm the least cost path from its source outlet link of thecomputational block to all the target inlet links of the correspondingcomputational blocks are found out one after another target inlet links.The cost function used is based on the Manhattan distance between thetarget inlet link's block and source outlet link's block by taking thedelays on each wire is considered in the cost function and also thatlongest wires are chosen first in the A* search algorithm.

According to the current invention, before scheduling the set ofmulticast connections in the scheduling method 1700, first a set ofstatic cost tables will be prepared with the least cost paths from eachlink of the partial multistage network V_(Comb)(N₁,N₂,d,s) to eachoutgoing hop wire from that partial multistage network as well as toeach inlet link of the computational block connected form that partialmultistage network. So there will be as many cost tables created equalto the sum of the total number of outgoing hop wires from the partialmultistage network and the inlet links of the computational blockconnected form that partial multistage network. Each cost table willalso have as many entries as there are internal links of that partialmultistage network. And the value at each entry of these cost tables isequal to the total delay from the corresponding internal link to thecorresponding outgoing hop wire or to the inlet link of thecomputational block.

In act 1760, according to the current invention, for the look-ahead costcomputation during the A* search algorithm both the cost from the staticcost tables from the current internal link in the current partialmultistage network and the cost value computed based on the Manhattandistance between the target inlet link's block and the current link'scorresponding block by taking the delays on each wire into considerationare added. Also the least of the cost values from all the cost tablescorresponding to the current link and all the outgoing wires in theright direction of the target block, is selected before it is added tothe Manhattan distance based cost. Finally in act 1760, the multicastconnection is scheduled as for the A* search algorithm. Then the controlgoes to act 1770.

In act 1770, the demand cost and history cost of each link used by thecurrent multicast connection are updated. And the control goes to act1720. Thus act 1720, act 1730, act 1740, act 1750, act 1760, and act1770 are executed in a loop to schedule the multicast connections bygoing through the list of all multicast connections which will be onepass or iteration.

In act 1730 results “yes”, i.e. all the required multicast connectionsin the list are scheduled in this pass or iteration, then the controlgoes to act 1780. In act 1780, the total number of links in the completemultistage network that are taken by more than one multicast connectionare counted, hereinafter “OSN” or “Over Subscription nodes”. Then thecontrol goes to act 1790. In act 1790 it will be checked and if OSN isnot equal to zero then the act 1790 results in “no” and the control goesto act 1710 to start the next iteration or pass to schedule all therequired multicast connections in the list of all multicast connections.Thus act 1710, act 1720, act 1730, act 1740, act 1750, act 1760, act1770, act 1780, and act 1790 are executed in a loop to implementdifferent passes or iterations of scheduling the set of all multicastconnections. If the act 1790 results in “yes”, that means no link in thecomplete multistage network is taken by more than one multicastconnection and hence the scheduling is successfully completed.

Each multicast connection of the type described above in reference tomethod 1700 of FIG. 17 can be unicast connection, a multicast connectionor a broadcast connection, depending on the example.

Inter-Block and Intra-Block Scheduling Method Embodiments theMulti-Stage Hierarchical Network V_(Comb)(N₁,N₂,d,s):

FIG. 18 shows a high-level flowchart of a scheduling method 1800, in oneembodiment executed to setup multicast connections in the multi-stagehierarchical network V_(Comb)(N₁,N₂,d,s) disclosed in this invention intwo steps (one for each act 1810 and act 1820 as shown in FIG. 18)namely: 1) scheduling the set of multicast connections outside theblocks of 2D-grid of blocks with each block corresponding to a partialmulti-stage network, or in between the blocks of the completemulti-stage network, or alternatively on the external wires of thecomplete multi-stage network hereinafter “inter-block scheduling”.Inter-block scheduling is implemented in act 1810 so that there are noOSN nodes. During inter-block scheduling the partial multi-stagehierarchical network corresponding to each block is considered as asingle stage network or alternatively each internal wire of the partialmulti-stage hierarchical network is directly connected to each outgoingwire or external wire of the partial multi-stage hierarchical network,and 2) scheduling the set of multicast connections inside the blocks of2D-grid of blocks with each block corresponding to a partial multi-stagenetwork or alternatively on the internal wires of the completemulti-stage network hereinafter “intra-block scheduling”. The act 1820implements intra-block scheduling for each block so that there are noOSN nodes.

The act 1810 may be implemented by the scheduling method 1700 of FIG.17. Similarly in act 1820 for each block of the multi-stage hierarchicalnetwork, the inter-block scheduling may be implemented by the schedulingmethod 1700 of FIG. 17.

In accordance with the current invention, the scheduling method 1700 ofFIG. 17 and the scheduling method 1800 of FIG. 18 are applicable toeither partial multi-stage hierarchical network V_(D-Comb)(N₁,N₂,d,s)100A of FIG. 1A, or partial multi-stage hierarchical networkV_(D-Comb)(N₁,N₂,d,s) 100B of FIG. 1B, or partial multi-stagehierarchical network V_(D-Comb)(N₁,N₂,d,s) 100C of FIG. 1C,corresponding to a block of 2D-grid of blocks 800 of FIG. 8, using anyone of the embodiments of 200A-200F of FIGS. 2A-2F, 900A-900E of FIGS.9A-9E, 1000A-1000F of FIGS. 10A-10F, 1100A-1100C of FIGS. 11A-11C toimplement a stage of a ring of the multi-stage hierarchical network,either by using the hop wire connections or multi-drop hop wireconnections between two arbitrary stages in two different rings of thesame block or two different rings of different blocks described indiagram 700A of FIG. 7A may be any one of the embodiments of either thediagrams 300A of FIG. 3A, 300B of FIG. 3B, 300C of FIG. 3C, 300D of FIG.3D, 300E of FIG. 3E, 500A of FIG. 5A, 1200 of FIG. 12, 1300 of FIG. 13,1400 of FIG. 14, and 1500 of FIG. 15 or by using the hop wireconnections or multi-drop hop wire connections between two arbitrarystages in two different rings of the same block or two different ringsof different blocks may be any one of the embodiments of either thediagrams 400A of FIG. 4A, 400B of FIG. 4B, 600A of FIG. 6A, or 600B ofFIG. 6B is very efficient in the reduction of the die size, powerconsumption, and highly optimized for lower wire/path delay for higherperformance for practical routing applications to particularly to set upbroadcast, unicast and multicast connections.

Numerous modifications and adaptations of the embodiments,implementations, and examples described herein will be apparent to theskilled artisan in view of the disclosure.

What is claimed is:
 1. A two-dimensional layout of hierarchical routingnetwork comprising a total of a×b blocks with one side of said layouthaving the size of a blocks and the other side of said layout having thesize of b blocks where a≧1 and b≧1, and Said routing network comprisinga total of N₁ inlet links and a total of N₂ outlet links wherein eitherN₂=N₁×d₂, N₁=(a×b)×d, and said each block comprising d inlet links andd×d₂ outlet links, and said each block comprising r rings where d₂=r×p,and y_(r) hierarchical stages in each said ring, (i.e., the number ofstages in ring 1 is y₁, the number of stages in ring 2 is y₂, . . . ,and the number of stages in ring r is y_(r)), where r≧1; p≧2; orN₁=N₂×d₁, N₂=(a×b)×d, and said each block comprising d outlet links andd×d₁ inlet links, and said each block comprising r rings where d₁=r×p,and y_(r) hierarchical stages in each said ring, (i.e., the number ofstages in ring 1 is y₁, the number of stages in ring 2 is y₂, . . . ,and the number of stages in ring r is y_(r)), where r≧1, p≧2, y_(r)≧1;and Said each stage comprising a switch of size d×d, where d≧4 and eachsaid switch of size d×d having d incoming links and d outgoing links;and Said all inlet links are connecting to one or more of the saidincoming links of any said switch of any stage of any ring of any block,and said all outlet links are connecting from one or more of the saidoutgoing links of any said switch of any stage of any ring of any block,Said incoming links and outgoing links in each switch in said each stageof said each block comprising a plurality of forward connecting linksconnecting from switches in lower stage to switches in the immediatesucceeding higher stage in the same ring, and also comprising aplurality of backward connecting links connecting from switches inhigher stage to switches in the immediate preceding lower stage in thesame ring; and Said forward connecting links comprising a plurality ofstraight links connecting from a switch in a stage of a ring in a blockto a plurality of switches in a plurality of stages of the same ring inthe same block and also comprising a plurality of cross links connectingfrom a switch in a stage of a ring in a block to a plurality of switchesin a plurality of stages of another ring in the same block or to aplurality of switches in a plurality of stages of another ring in adifferent block, and Said backward connecting links comprising aplurality of straight links connecting from a switch in a stage of aring in a block to a plurality of switches in a plurality of stages ofthe same ring in the same block and also comprising a plurality of crosslinks connecting from a switch in a stage of a ring in a block to aplurality of switches in a plurality of stages of another ring the sameblock or to a plurality of switches in a plurality of stages of anotherring in a different block.
 2. The two-dimensional layout of claim 1,wherein said all cross links between switches of stages of rings betweenany two different blocks are connecting as either vertical links only,or horizontal links only, or both vertical links and horizontal links.3. The two-dimensional layout of claim 2, wherein said all horizontalcross links between switches in any two corresponding said succeedingstages are substantially of equal length and said vertical cross linksbetween switches in any two corresponding said succeeding stages aresubstantially of equal length in the entire said two-dimensional layout.4. The two-dimensional layout of claim 1, wherein said horizontal crosslinks and vertical cross links are implemented on two or more metallayers.
 5. The two-dimensional layout of claim 1, wherein said switchescomprising either active and reprogrammable cross points and said eachcross point is programmable by an SRAM cell or a Flash Cell; ormultiplexers and said each multiplexer is programmable by an SRAM cellor a Flash Cell.
 6. The two-dimensional layout of claim 1, wherein saidblocks are of equal size and each said block comprising the same numberof said rings and said stages in each said ring and said switches ineach said stage, regardless of the size of said two-dimensional grid sothat each said ring and said stages in each said ring and said switchesin each stage is replicable in both vertical direction or horizontaldirection of said two-dimensional layout.
 7. The two-dimensional layoutof claim 4, wherein said blocks further comprising Lookup Tables(hereinafter “LUTs”) having outlet links connected to inlet links ofsaid routing network and further having inlet links connected fromoutlet links of said routing network and said two-dimensional layoutwith said blocks of LUTs is a field programmable gate array (FPGA)integrated circuit device or field programmable gate array (FPGA) blockembedded in another integrated circuit device.
 8. The two-dimensionallayout of claim 4, wherein said blocks further comprising AND or ORgates having outlet links connected to inlet links of said routingnetwork and further having inlet links connected from outlet links ofsaid routing network and said two-dimensional layout with said blocks ofAND or OR gates is a programmable logic device (PLD).
 9. Thetwo-dimensional layout of claim 1, wherein said blocks furthercomprising any arbitrary hardware logic or memory circuits.
 10. Thetwo-dimensional layout of claim 1, wherein said switches comprisingactive one-time programmable cross points.
 11. The two-dimensionallayout of claim 10, wherein said blocks further comprising Lookup Tables(hereinafter “LUTs”) having outlet links connected to inlet links ofsaid routing network and further having inlet links connected fromoutlet links of said routing network and said two-dimensional layoutwith said blocks of LUTs is a mask programmable gate array (MPGA) deviceor a structured ASIC device.
 12. The two-dimensional layout of claim 1,wherein said switches comprising passive cross points or just connectionof two links or not and said blocks further comprising any arbitraryhardware logic or memory circuits having outlet links connected to inletlinks of said routing network and further having inlet links connectedfrom outlet links of said routing network and said two-dimensionallayout with said blocks of arbitrary hardware logic or memory circuitsis an Application Specific Integrated Circuit (ASIC) device.
 13. Thetwo-dimensional layout of claim 1, wherein said blocks furtherrecursively comprise one or more sub-blocks and a sub-routing network.14. The two-dimensional layout of claim 1, wherein said straight linksconnecting from switches in each said block are connecting to switchesin the same said block; and said cross links are connecting as verticalor horizontal or diagonal links between two different said blocks. 15.The two-dimensional layout of claim 1, wherein said plurality of forwardconnecting links use a plurality of buffers to amplify signals driventhrough them and said plurality of backward connecting links use aplurality of buffers to amplify signals driven through them; and saidbuffers are either inverting or non-inverting buffers.
 16. Thetwo-dimensional layout of claim 1, wherein some of said stages of a ringin a block comprising a switch of size (d+m)×(d+n), where d≧4, m≧0, n≧0and hence each such switch having d+m incoming links and d+n outgoinglinks.
 17. The two-dimensional layout of claim 1, wherein said allswitches of size d×d are either fully populated or partially populated.